Я новичок в Python. Просто хочу знать, есть ли какой-нибудь модуль в python, подобный drb ruby? Как клиент может использовать объект, предоставленный сервером drb?Есть ли какой-нибудь модуль Python, похожий на Distributed Ruby
ответ
Я понятия не имею, что DRB есть, но с небольшим количеством информации, которую вы дали, это может быть что-то вроде Perspective Broker in Twisted
Введение
Предположим, вы оказываетесь в управлении из оба конца провода: у вас есть две программы , которым необходимо поговорить с каждым другим, и вы можете использовать любой протокол , который вы хотите. Если вы можете думать о вашей задачи в терминах объектов, которые нуждаются в сделать вызовы методов друг на друга, то шансы, что вы можете использовать протокол скручены Перспектива Брокер , а не пытаться втиснуть свои потребности в чем-то вроде HTTP , или , реализующий еще один RPC механизм.
Система Perspective Broker (сокращенно PB, порождая многочисленные сэндвич связанных с каламбурами) основана на нескольких центральных понятий:
сериализации: принимать довольно произвольные объектов и типов, превращая их в кусок байтов , отправив их по проводам , затем восстановив их на другом конце . Сохраняя тщательный контроль идентификаторов объектов , сериализованные объекты могут содержать ссылки на другие объекты , а удаленная копия по-прежнему будет .
удаленный метод вызывает: делать то локальный объект и вызывает метод, чтобы работать на отдаленной. Локальный объект - , называемый RemoteReference, и вы делаете , используя его .callRemote .
Вы посмотрели на execnet?
Стандартный multiprocessing модуль может делать то, что вы хотите.
Для параллельной обработки и распределенных вычислений я использую parallel python.
Pyro делает то, что, я думаю, вы описываете (хотя я не использовал drb).
С сайта:
Pyro коротка для Пайтона удаленных объектов.Это усовершенствованная и мощная система распределенных объектов, полностью написанная на Python, которая очень проста в использовании. Никогда не беспокойтесь о написании кода сетевой связи еще раз, при использовании Pyro вы просто пишете объекты Python, как обычно. Используя только несколько строк дополнительного кода, Pyro позаботится о сетевой связи между вашими объектами, как только вы разделите их на разные машины в сети. Все детали программирования сокета gory позаботятся, вы просто вызываете метод на удаленном объекте, как если бы это был локальный объект!
+1: pyro отлично –
Это, но, учитывая, что вы отправили сначала и сумели предоставить список альтернатив, я не буду жалеть вашего ответа, получив больше голосов! – mavnn
- 1. Есть ли у Perl модуль, похожий на docopt?
- 2. Есть ли модуль AngularJS, похожий на библиотеку запросов NodeJS?
- 3. Есть ли подключаемый модуль Vim, похожий на fuzzyfinder_textmate и Command-T, который не требует поддержки Ruby?
- 4. Имеет ли Ruby метод «dir», похожий на Python?
- 5. Есть ли инструмент развертывания, похожий на Fabric, написанный на JavaScript?
- 6. Модуль меню, похожий на ДНК
- 7. Есть ли инструмент Matlab, похожий на Doctest Python?
- 8. Есть ли класс Python, похожий на QListIterator в QT?
- 9. Есть ли ярлык в Elixir, похожий на перечисление Python?
- 10. Есть ли пакет Python, похожий на Perl's Archive :: Extract?
- 11. Есть ли синхронизированный сигнал, похожий на pthread_cond_timedwait?
- 12. Есть ли php-оператор, похожий на «||» javascript?
- 13. Есть ли проект MyPHP, похожий на MyPerl?
- 14. Есть ли reset.js, похожий на reset.css?
- 15. Есть ли инструмент Eclipse, похожий на T4?
- 16. Есть ли какой-либо PHP ORM, похожий на Ruby's DataMapper?
- 17. Как перенести модуль для Ruby на Python
- 18. Есть ли встроенный битрейт, похожий на std :: bitset из C++?
- 19. Есть ли модуль Clojure, эквивалентный lxml Python?
- 20. Есть ли модуль статистики для Python 2.7?
- 21. Имеет ли Javascript объект BasicObject, похожий на Ruby?
- 22. Python-подобный модуль shutil на Ruby
- 23. Модуль PWD Python для Ruby
- 24. Erlang: есть ли модуль, аналогичный Python "webbrowser"?
- 25. Есть ли у python модуль «error»?
- 26. Есть ли веб-модуль сервера Python 3?
- 27. Есть ли модуль webkit2 для python?
- 28. Есть ли похожий на ReSharper инструмент для проектов на C++?
- 29. В python есть способ исправить список, похожий на использование patch.dict?
- 30. Есть ли модуль python для управления интерфейсами на Ubuntu?
Если вы хотите расширить аудиторию, которая может ответить на ваш вопрос, вы можете описать, что делает Distributed Ruby (aka drb). Потому что я довольно строгий парень на Питоне, и я понятия не имею. – Omnifarious
«Распределенный Ruby - это распределенная объектная система для Ruby, которая позволяет объекту в одном Ruby-процессе вызывать методы на объекте в другом Ruby-процессе на том же или другом компьютере». В основном, drb-сервер выступает в качестве источника объектов , Для клиента кажется, что объекты локальны, но код выполняется удаленно на стороне сервера. – ccy
Вы можете отредактировать исходный вопрос, лучше разместите описание там. – nikow