Hi All,

I'm trying to write a multi threaded TPC server. I have used xmlrpc before for many purposes, but in this case this would not be efficient:

- I have to send larger amounts of data, the overhead of converting to XML and parsing XML back would be too much pain - I have no clue how to do keep-alive with simplexmlrpcserver and it is slow to open a new connection for each RPC - I would like to do session management (authentication, then store session info on server site) which is also hard with xmlrpc.

I have looked at various solutions including:

- PyOrbit - too heavy weight
- Pyro - uses pickle, I do not trust it

BTW I do not care about the clients - they must trust the server side. In contrast, the server should not receive anything from the clients that is dangerous. I would like to use something that is fast, and can only transfer data, not code. For this reason I think I cannot use the marshal module because it is able to marshal code objects. I think I'm going to implement my own "pickler" over xdrlib, that will only pack/unpack data, NOT code. (It would also have the advantage that others could write clients in different languages.)

Before I start re-inventing the wheel:

- Is there another (already existing) higher level framework that I can try? It should be safe and fast, that is the only restriction. - Do you think that it is a good idea to use xdrlib? I haven't seen projects using it directly. For me it is like the rotor module was - it was there but almost nobody used it. There might be a better lower level library which I don't know of.

Thank you,

  Laszlo

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to