[openstack-dev] A proposal for RPC-friendly objects

Joshua Harlow harlowja at yahoo-inc.com
Mon May 6 23:18:42 UTC 2013


Very cool, will be a welcome addition :-)

I was just wondering about the magic rpc part.

It might be controversial but is a decorator the right way to go?

>From a glance at other types of RPC frameworks it seems like they pretty
strongly separate the object and its functions from the thing doing RPC on
behalf of object. Maybe what you are doing is similar (and hidden behind
said decorator?). I wonder if instead of a function level decorator that u
could basically wrap a given object (and its functions) with a proxy
object and let said proxy object call via RPC. This avoids more decorator
nastiness?

This seems similar to the xmlrpclib or pyro4 (in concept) which does
similar automagic conversion.

* http://hg.python.org/cpython/file/8527427914a2/Lib/xmlrpclib.py#l1212 is
interesting. 
* http://pythonhosted.org/Pyro4/clientcode.html might be similarily
interesting.

On 5/6/13 1:36 PM, "Dan Smith" <dms at danplanet.com> wrote:

>Hi all,
>
>At the summit a few weeks ago, Chris Behrens and I colluded with
>several other Nova developers to work on a proposal for implementing
>objects in Nova that would ease some of the pain caused by moving to
>always passing primitives over RPC. Our goals are:
>
>1. Better organize and co-locate data with its implementation
>2. More intelligently (de-)serialize object data over RPC
>3. Version the format of the data to assist live upgrade
>
>We've been working on some proof-of-concept code to do this, and I've
>written up a wiki page describing what we're trying to do:
>
>  https://wiki.openstack.org/wiki/ObjectProposal
>
>We'd appreciate some feedback on the approach, as well as discussion
>about whether something like this belongs in Oslo so that it can be
>used by other projects.
>
>Thanks!
>
>--Dan
>
>_______________________________________________
>OpenStack-dev mailing list
>OpenStack-dev at lists.openstack.org
>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




More information about the OpenStack-dev mailing list