[Twisted-Python] XML-RPC over Unix Sockets?

glyph at divmod.com glyph at divmod.com
Sun Jul 5 21:30:23 EDT 2009

On 5 Jul, 10:32 pm, kristian at spritelink.net wrote:
>I'm trying to build a client / server setup using
>XML-RPC run over UNIX sockets.

>Now, on the client on the other hand I've
>basically copied this example:
>but replaced the Proxy connection string with:
>         proxy = Proxy('file:///tmp/my_socket')

>Am I insane? Is XML-RPC over UNIX domain sockets
>just plain crazy, or is there even some flaw that
>makes it impossible?
>Any suggestions are most welcome. Thank you.

It may be possible to do, but there are a number of ugly details that 
you've ignored.  For example, when one has an URL like 
'http://example.com/my/custom/site/RPC2', it's very clear where the host 
(network endpoint) is and where the path (thing that you send to that 
network endpoint to identify the resource) is.

But if you have 'file:///tmp/example_com/my/custom/site/RPC2' it's not 
at a all clear which of those things is a directory, which is a socket, 
and which is a path for the HTTP part which isn't present in the 
filesystem at all.

This would certainly require some reworking of Twisted's HTTP internals 
and the creation of a new URL scheme so that those things could be 
identified.  I wouldn't say that these changes would be rejected out of 
hand, necessarily, but you would have to have pretty good test coverage, 
good documentation and an explanation of why such a thing would be a 
better idea than an HTTP server listening only on localhost :).

Twisted-Python mailing list
Twisted-Python at twistedmatrix.com

More information about the Twisted-Python mailing list