Thanks. I've done some research but seems that AMP does not have any C or CPP implementation. As described in this thread, the python implementation of Google Buffer is not very mature, that's why I have gave it up. https://groups.google.com/group/protobuf/browse_thread/thread/9acb7638e1f5ff61/2fc640fd1d3f98b8?lnk=gst&q=python I think I shall try to make ICE work with twisted, although thread synchronization might be a problem. BTW : If you are interested in RPC, have a look at http://zeroc.com/ice.html On Mon, Jul 21, 2008 at 9:18 PM, David Ripton <dripton@ripton.net> wrote:
On 2008.07.21 15:01:49 +0800, Peter Cai wrote:
I'm looking for an RPC system working with twisted.
1. Binary. I want it run faster than any xml based RPC.
2. Bidirectional. Unlike HTTP, on which the client has to poll the sever for events, the server should "call" the client's method to notify events.
3. C/Python support. Part of the system shall be written in C.
4. Could easily integrated with twisted.
Twisted AMP meets all your requirements except C support, which you could probably add. (Or maybe avoid adding by using some other way to bridge C computing code with Python network code, like ctypes.)
Also take a look at Google's Protocol Buffers, which lacks C support but has C++ support. A Twisted version called txprotobuf was recently announced. (Note that Protocol Buffers isn't really a full RPC system, just the serialization part.)
I think combining these two might work nicely, though I haven't tried it yet.
-- David Ripton dripton@ripton.net
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
-- 当只有一张纸和一支笔的时候, 我相信你写下的东西对你来说就是真实的, 不管他们到底是不是真的。