2011-07-05 2 views
0

Quelle version de Cassandra et l'API Thrift soutient pleinement C#?Quelle version de Cassandra et l'API Thrift soutient pleinement C#?

Parce que la source C# pour créer le Thrift.dll est actuellement différent de la source Java pour générer le Thrift.jar

C# .net ici

\thrift-0.6.1\lib\csharp\src 

ou here in the Apache Thrift SVN

Il manque la classe TFastFramedTransport qui se trouve dans la source Java trouvée dans ce dossier

\thrift-0.6.1\lib\java\src\org\apache\thrift 

ou here in the Apache Thrift SVN

Répondre

0

j'ai posé la même question de la liste de diffusion Thrift ici:

IFastFramedTransport missing in C# source

Et a obtenu cette réponse:

FastFramedTransport (en Java) est juste un salut gher-performance FramedTransport. Ce n'est pas nécessaire pour l'opération.

En ce qui concerne quand vous pouvez voir un analogue en C#, la réponse est probablement « quand vous soumettez un patch pour elle. » :)

-Bryan

3

La version Thrift 0.6 prend déjà entièrement en charge le C#.

Cassandra est écrit en Java, mais il faut les demandes des applications via des sockets, qui est soutenu par Thrift API pour le rendre plus facile. Alors! vous venez de générer client Cassandra par l'invite de commande et l'utiliser :), dépendez sur quel langage de programmation que vous utilisez pour votre application

par exemple, pour générer le client C# Cassandra:

Thrift --gen csharp cassandra.thrift 

pour générer java client Cassandra :

Thrift --gen java cassandra.thrift 

... cependant, il est fortement recommandé d'utiliser un client de niveau supérieur comme Aquiles ou Hector au lieu d'essayer d'utiliser Thrift directement. Ce n'est pas conçu pour ça.

(Re le plus précisément le transport encadré, ce qui a été pris en charge à partir de C# for years, mais pas avec le même nom de classe exacte que Java.)

+0

Quand je produis le code Thrift, je dois aussi faire référence à la Thrift.dll, qui est créé en compilant un autre projet dans la source Thrift. Mais le C# source est différente de la source Java, plus précisément, Java comprend une TFastFramedTransport de classe qui C# .Net ne fonctionne pas. Est-ce que cela signifie que le courant C# .Net source de Thrift est pas à jour? – Robs

+0

Je pense que c'est une erreur de la part de l'équipe Apache thrift quand ils ont livré le code source: Vous pouvez trouver la même erreur dans cette adresse: http://stackoverflow.com/questions/6578411/tfastframedtransort-missing-from-thrift-c- lib –

Questions connexes