What is the current choice for doing RPC in Python?
You could try Ladon. It serves up multiple web server protocols at once so you can offer more flexibility at the client side.
http://pypi.python.org/pypi/ladon
Since I've asked this question, I've started using python-symmetric-jsonrpc. It is quite good, can be used between python and non-python software and follow the JSON-RPC standard. But it lacks some examples.
Apache Thrift is a cross-language RPC option developed at Facebook. Works over sockets, function signatures are defined in text files in a language-independent way.
XML-RPC is part of the Python standard library:
- Python 2: xmlrpclib and SimpleXMLRPCServer
- Python 3: xmlrpc (both client and server)