web-dev-qa-db-fra.com

Quel est le choix actuel pour faire du RPC en Python?

En fait, j'ai déjà travaillé avec Pyro et RPyC, mais la mise en œuvre de RPC est plus complexe que ces deux-là. Pouvons-nous en faire une liste?

Protocoles natifs basés sur Python:

Les frameworks RPC avec beaucoup de protocoles sous-jacents:

Framework basé sur JSON-RPC:

SAVON:

Framework basé sur XML-RPC:

Autres:

124
edomaur

XML-RPC fait partie de la Python:

37
Pär Wieslander

Apache Thrift est une option RPC inter-langues développée sur Facebook. Travaillant sur des sockets, les signatures de fonction sont définies dans des fichiers texte de manière indépendante de la langue.

16
RemcoGerlich

Depuis que j'ai posé cette question, j'ai commencé à utiliser python-symmetric-jsonrpc . C'est assez bon, peut être utilisé entre les logiciels python et non-python et suit le standard JSON-RPC. Mais il manque quelques exemples.

6
edomaur

Tu pourrais essayer Ladon. Il sert simultanément plusieurs protocoles de serveur Web, ce qui vous permet d'offrir plus de flexibilité côté client.

http://pypi.python.org/pypi/ladon

5
Jakob

Quelques tentatives ont été faites pour que SOAP fonctionne avec python, mais je ne l’ai pas beaucoup testé et je ne peux donc pas dire si c’est bon ou non.

SOAPy est un exemple.

2
Mattias Nilsson

Nous développons Versile Python (VPy), une implémentation pour python 2.6+ et 3.x d'un nouveau framework ORB/RPC. Les versions de développement AGPL fonctionnelles pour révision et Les tests sont disponible . VPy a des capacités natives python similaires à celles de PyRo et RPyC via une couche d'objets natifs généraux ( exemple de code ). Le produit est conçu pour l'interaction d'objet distant indépendante de la plate-forme pour les implémentations de Versile Platform .

Divulgation complète: je travaille pour la société en développement VPy.

2
Versile

peut-être ZSI qui implémente SOAP. J'ai utilisé le générateur de stub et cela a fonctionné correctement. Le seul problème que j'ai rencontré concerne le fait de faire SOAP via HTTPS.

1
Phil

Vous avez manqué omniORB . Ceci est une implémentation plutôt complète de CORBA, vous pouvez donc également l'utiliser pour parler à d'autres langues prises en charge par CORBA.

0
Dave Kirby