On 01/22/2015 06:40 PM, Salvatore Orlando wrote: > I also like the idea of considering the RPC interface. What kind of > stability / versioning exists on the Neutron RPC interface? > > > Even if Neutron does not have fancy things such as objects with > remotable method, I think its RPC interfaces are versioned exactly in > the same way as Nova. On REST vs AMQP I do not have a strong opinion. > This topic comes up quite often; on the one hand REST provides a cleaner > separation of concerns between the two projects; on the other hand RPC > will enable us to design an optimised interface specific to Nova. While > REST over HTTP is not as bandwidth-efficient as RPC over AMQP it however > allow deployers to use off-the-shelf tools for HTTP optimisation, such > as load balancing, or caching.
Neutron uses rpc versioning, but there are some problems with it (that I have been working to clean up). The first one is that the interfaces are quite tangled together. There are interfaces that appear separate, but are used with a bunch of mixin classes and actually presented as a single API over rpc. That means they have to be versioned together, which is not really happening consistently in practice. I'm aiming to have all of this cleared up by the end of Kilo, though. The other issue is related to the "fancy things such as objects with remotable methods". :-) The key with this is versioning the data sent over these interfaces. Even with rpc interface versioning clear and consistently used, I still wouldn't consider these as stable interfaces until the data is versioned, as well. -- Russell Bryant __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev