2009-10-28 3 views
1

저는 Python을 처음 사용합니다. 그냥 파이썬에서 루비의 drb와 비슷한 모듈이 있는지 알고 싶습니까? 클라이언트가 drb 서버에서 제공하는 객체를 사용할 수 있습니까?분산 루비와 비슷한 Python 모듈이 있습니까

+3

질문에 답변 할 수있는 잠재 고객을 넓히려는 경우 분산 루비 (drb라고도 함)의 역할을 설명 할 수 있습니다. 왜냐하면 나는 꽤 엄격하게 파이썬 사람이고 나는 잘 모른다. – Omnifarious

+1

"분산 루비는 Ruby의 분산 객체 시스템으로 하나의 Ruby 프로세스에있는 객체가 동일하거나 다른 시스템의 다른 Ruby 프로세스에있는 객체의 메소드를 호출 할 수있게 해줍니다."라고 말합니다. 기본적으로 drb 서버는 객체의 소스 역할을합니다 . 클라이언트에게는 객체가 로컬 인 것처럼 보이지만 코드는 서버 측에서 원격으로 실행됩니다. – ccy

+0

원래 질문을 편집하여 더 잘 설명 할 수 있습니다. – nikow

답변

6

은 파이썬 패키지 색인 here의 개체 중개 주제 영역을 검색하여 찾을 수 있습니다.

가장 오래되고 가장 널리 사용되는 것은 Pyro입니다.

0

나는 무엇 DRB 아무 생각이 없다, 그러나 당신이 준 작은 정보, 에서는 Perspective Broker in Twisted

소개 같은 수 있습니다

당신이 제어 의에서 자신을 발견한다고 가정 두 개의 전선 : 두 개의 프로그램이 있습니다. 각각 과 통신해야하며 원하는 프로토콜은 모두 입니다. 당신이 서로 메소드 호출을 만들기 위해 필요 개체의 관점에서 문제를 생각할 수있는 경우, 다음 기회는 당신이 아니라 HTTP 같은으로 요구 구둣 주걱하는 것보다 의 트위스트 관점 브로커 프로토콜 를 사용할 수있는 좋은 , 또는 또 다른 RPC 메커니즘을 구현하는 .

관점 브로커 시스템 (약식 PB, 수많은 샌드위치 관련 말장난을 산란)는 몇 가지 중심 개념에 기초 :

직렬화 : 상당히 임의 객체와 유형을 복용으로 돌려 바이트의 청크로, 와이어를 통해 전송 한 다음 다른 끝에 으로 다시 구성하십시오. 객체 ID를주의 깊게 추적하면 일련 번호가 지정된 객체는 에 다른 객체 에 대한 참조를 포함 할 수 있으며 원격 복사본은 여전히 ​​ 이됩니다. 지역 오브젝트를 일을하고 이 방법은 먼 하나에서 실행 얻을 원인 :

원격 메소드는가 호출합니다. 로컬 개체는 이고 원격 참조는 입니다.이 메서드는 .callRemote 메서드를 실행하여 수행합니다.

2

Pyro 나는 당신이 (drb을 사용하지 않았지만) 당신이 생각하는 것을 수행합니다. 웹 사이트에서

:

파이는 파이썬 원격 객체에 대한 짧습니다.매우 사용하기 쉽도록 고안된 전적으로 Python으로 작성된 고급 강력 분산 객체 기술 시스템입니다. Pyro를 사용할 때 네트워크 통신 코드를 다시 작성하는 것에 대해 걱정하지 마십시오. 평소처럼 Python 객체를 작성하면됩니다. 몇 줄의 추가 코드 만 있으면 Pyro는 네트워크의 다른 컴퓨터로 개체를 분할하면 개체 간의 네트워크 통신을 처리합니다. 모든 고어 소켓 프로그래밍의 세부 사항은 처리됩니다. 마치 로컬 객체 인 것처럼 원격 객체의 메소드를 호출합니다!

이것은 일반적으로 "개체 중개"이 지역의 일부 파이썬 패키지 목록이라고
+0

+1 : pyro는 우수합니다. –

+0

당신이 먼저 게시하고 대안 목록을 제공했기 때문에 나는 더 많은 표를 얻었습니다. – mavnn

관련 문제