I'm currently using json and http to call perl functions from python, but it's slow.  Based on some research, messagepack is best for serialization and zeromq is the best transport.  Both have cross platform bindings, but before I dig in, I would like to know what others are using for fast cross-language RPC (preferably with persistent tcp connections)
After studying this for a couple days I'm going with ZeroMQ + messagepack.  The ZeroMQ docs show how to use messagepack, and I can implement an RPC server or client in only a few lines.  The ZeroMQ modules for perl and python both have JSON serialization built in, so it's possible to implement RPC with ZeroMQ alone, but messagepack will give a nice boost to my data heavy calls.  Thrift looks nice too, but it adds an extra configuration file and is fairly high level.  I am sure to get max performance with ZeroMQ and it leaves a lot more options open.
RPC between python and perl