5 ms·
> (Word of warning: historically, Thrift has not been consistent in their feature support and performance across all the languages, so do some research). Conve
by mikeklaas 15y ago
> (Word of warning: historically, Thrift has not been consistent in their feature support and performance across all the languages, so do some research).
Conversely, we chose Thrift over protobuf for this reason. Protobuf's python performance was abysmal — over 10x worse than Thrift.
- nikcub 15y agowhich is interesting since appengine uses protobuf in python throughout the api you'd think they have nailed the implementation
- sigil 15y ago> Protobuf's python performance was abysmal — over 10x worse than Thrift. This is still true of the official implementation from Google, which is pure Python. That's why I wrote the Python half of lwpb [1], and why the Greplin guys wrote fast-python-pb [2]. Both are about 10x faster than the Google Python implementation, so I'd guess on par with Thrift now. [1] https://github.com/acg/lwpb https://github.com/acg/lwpb [2] https://github.com/Greplin/fast-python-pb/tree/master/benchmark https://github.com/Greplin/fast-python-pb/tree/master/benchm...
- X-Istence 15y agoGoogle has an experimental but in my experimenting very stable version of PB that is a C++ extension for Python so you get pretty much the same speed as C++.
- thadeus_venture 15y agoDoes anyone by any chance know if there is a version of the riak python driver that does not use google's protobuf implementation? I'm looking into using riak and hearing this does not exactly instill confidence, as riak uses google's protobuf implementation and http as its two communication protocols.
- grncdr 15y agoTake this for what it is (anectdotal evidence) but I found that write performance with python+riak was abysmal, while read performance wasn't as bad. Unfortunately I didn't have time to hack the riak driver to use a non-google protocol buffer implementation before my deadlines, but it should be do-able.