2010-09-02 15 views
10

Ich bin auf der Suche nach einem RPC-Framework für den internen Gebrauch. Der Rahmen muss eine Sprache sein. Ich erkunde gerade Apache Thrift. Google Protokoll Puffer bietet keine RPC-Funktionen genau. Welche Möglichkeiten habe ich außer Thrift? (Meine Server werden hauptsächlich Java sein und die Clients werden Java, Python, PHP sein).RPC-Frameworks verfügbar?

+0

Nach ein wenig erkunden, und mit Blick auf alle verfügbaren Optionen zusammen mit der Dokumentation, bevorzuge ich Sparsamkeit. Wartet darauf, dass das Message Pack reifer wird – sheki

+0

Neugierig, was genau Sie mit RPC über eine sehr einfache Anfrage-/Antwortbehandlung ("REST") suchen; zum Beispiel einfache HTTP + JSON-Kombination funktioniert eher gut, bequem, Leistung, einfach. Was würde ein Framework wie Sparsamkeit, PB, Hessian oder andere dir kaufen? – StaxMan

+0

Thrift ist definitiv schneller und leichter als der HTTP/JSON-Ansatz. Mit Thrift können mehr Anfragen beantwortet werden als mit HTTP + JSON/XML. Thrift ist also eine gute Wahl für interne Dienste. REST-Ansatz möglicherweise am besten für externe APIs – sheki

Antwort

2

Ich würde REST als eine erste Option betrachten, weil es allgegenwärtig und no-nonsense ist.

Wenn Leistung und Darstellung wirklich kompakt sein müssen, habe ich gute Dinge über Apache AVRO gehört und meine Finger zucken, um es in Wut auszuprobieren.

+0

AVRO scheint interessant. Nun REST vs RPC Debatte ist vorbei und ich bin auf der Suche nach RPC Alternativen – sheki

+0

Viel Glück! Lassen Sie uns wissen, wie es funktioniert. –

+0

Nun, auf den ersten Blick scheint AVRO PHP nicht von Anfang an zu unterstützen. Das könnte ein Problem für uns sein. – sheki

1

Es scheint auch ICE: , die Google Protocol Buffers für RPC verwendet.

+0

Um genau zu sein, verwendet es sie nicht, aber kann sie emulieren. –

4

Es gibt auch MessagePack , die angeblich schneller als Protokollpuffer sind und mehr Funktionen als Thrift haben.

+5

Um ehrlich zu sein, spielen Leistungsunterschiede zwischen PB, Thrift und Alternativen selten eine Rolle - sie sind alle schnell genug für die meisten Anwendungen. – StaxMan