On Tue, Jan 31, 2006 at 02:36:43PM -0700, Ronald G Minnich wrote:
> Anthony Liguori wrote:
> >Hi,
> >
> >I wanted to give the list a heads up about something a number of us
> >discussed at the recent XenSummit.
> >
> >We would like to simplify Xend by utilizing more of the standard Python
> >library and relying on less of our own code. The most obvious thing
> >here is the current S-Expression/HTTP RPC interface. We would like to
> >replace this with XML-RPC using Python's builtin support (xmlrpclib and
> >SimpleXMLRPCServer).
> >
> >I've got some initial code and more details on the wiki
> >(http://wiki.xensource.com/xenwiki/Xend/XML-RPC). Early estimates are
> >that this would reduce the code in Xend by about 33% (5k slocs). We
> >would also like to standardize this XML-RPC interface so that
> >third-parties write apps to this interface without worrying about
> >massive breakage.
>
>
> I think moving from s-exp's to XML is a bad move. If you want, use your
> s-expression library from LANL; it's used worldwide, and has done the
> job for a lot of projects.
>
> I know of at least one project that moved from XML to s-exp's, using our
> library, because XML is just plain unwieldy.
Firstly, Anthony, apologies for not writing up the conversation that we
had at the Xen Summit. I am currently on vacation, and will write it up
when I'm back at work (though it looks like you've got most of it on the
wiki already).
On the subject of the proposed changes themselves -- the issue is not
just a replacement of s-expressions with XML, but with the whole
protocol layer with one based upon XML-RPC -- i.e. with standardised
marshalling as well, and often stub generation from an interface
definition too. This should mean that there's less code for people to write
when they wish to interface with Xend (as with Redhat's libvir or IBM's
in-house work) as XML-RPC libraries already exist for every mainstream
language, AFAIK. Yes, there is an s-expression library available from
LANL, but that only gets you half the advantages that moving to XML-RPC
would bring, as you would still have to implement the message dispatch
and argument demarshalling.
As Anthony says, a further advantage is inside Xend, where we can use
the existing SimpleXMLRPCServer to implement the server-side messaging
layer, significantly reducing the size of Xend.
Ewan.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|