[Twisted-Python] new pb, cPB and general PBness?
warner at lothar.com
Fri Mar 24 03:31:04 EST 2006
[Sorry to take so long to respond to this]
Gabe Rudy <rudy at goldenhelix.com> writes:
> So I'm happily using pb and am generally content with the performace, but
> noticed the documentation mentioning that a C version of the jelly functions
> might be forthcoming kind of like the cPickle library.
> What is the status of "c" pb? I also saw talk of a "new" pb implementation
> (pb2?) and am wondering if the C version is being put on hold until the new
> pb protocol stabilizes. The new pb talk has got me curious as well. What's
> "new" or different about it?
"c" PB, by which you're probably referrering to cBanana, is still around, I
think. It replaces a small portion of the serialization process with a C
extension. I have no idea how much this might help. The architecture of
existing twisted.spread PB is not ideally suited towards replacing large
parts of it with C extensions, so there is probably a limit as to how much it
could be sped up this way.
"newpb", which is the next-generation PB that lives in twisted.pb (in SVN),
does not yet have any C extensions to speed it up, but I've tried to design
it in such a way that it will be easier to write them, and to make it
possible to replace more of the protocol implementation with C extensions
than in oldpb. This will need to interact with the creactor/cppreactor code
that Itamar has in his sandbox. But my hope is that newpb will be relatively
straightforward to make really fast.
I've just now created a trac/wiki page for newpb, with a brief list of
features and some pointers to docs.. please take a look!
More information about the Twisted-Python