2009-05-12 9 views

risposta

1

Non so zeroc, ma un'altra opzione è "protocol buffers" - questo è il formato di serializzazione binaria open source di Google, progettato per la portabilità (tra piattaforme e implementazioni), prestazioni (binario, economico da leggere/scrivere) e estensibilità.

Non esiste, tuttavia, uno stack RPC standard definito dai buffer di protocollo; una manciata di stack RPC stanno nascendo nella comunità, però.

Java, C++ e php sono nella versione di Google e sono disponibili various community versions, incluso C#.

+0

Ma non sei affatto prevenuto;) –

+1

@Joel - noterai che non ho intenzionalmente menzionato la mia versione ... anche se è gratuita, versatile, segue gli idiomi .NET e può funzionare sul tuo codice esistente ... –

+4

Ora Ice supporta nativamente i protocolli di protocollo Google nel 3.3 .1 release, quindi è possibile avere un RPC standard e la serializzazione insieme. –

6

Utilizziamo ZeroC Ice nei nostri progetti in lingua mista. Finora scriviamo in C++, Python e C#. Ice è molto facile da usare, scalabile ed estensibile. L'unico inconveniente è che devi scrivere plugin e fabbriche di oggetti per alcune lingue separatamente. Ad esempio, un plug-in dell'adattatore di trasporto per C++ non può essere riutilizzato in C# (ma funziona comunque con Python). Il nostro software (la sua parte C++) è critico per le prestazioni e Ice sta dando ottimi risultati. Le caratteristiche molto gustose sono l'aggiornamento delle vecchie strutture dati (è possibile modificare le vecchie classi memorizzate nel database, ad esempio, e aggiungere un nuovo campo ad esse) e la persistenza al volo (servizio Freeze). Altamente raccomandato.

Problemi correlati