[openstack-dev] [Common] generic rpc notifications
eric at cloudscaling.com
Wed Sep 5 20:23:05 UTC 2012
Currently, there only exists a rabbit_notifier module. It kind-of works with the other drivers, but at least in the case of the ZeroMQ driver, there is an assumption made that the rabbit notifier doesn't really work with.
Specifically, separating the topic and the priority with a period. In the ZeroMQ driver, we assume that the period is a separator between a topic and a host. I know this doesn't precisely match the general AMQP patterns, but it does match the pattern of how topics are otherwise constructed in OpenStack.
My solution has been to dynamically modify this topic inside the notify() function within the driver. It isn't very clean and it leaves much to be desired in terms of queue consumers, as any consumers would not know of the rewriting being done transparently within the driver.
Instead, I suggest that we either extend queue_get_for to support topic construction or we make a new method of a similar nature for notification construction. Also, perhaps obviously, the notification driver should be renamed (it seems prudent to leave the old filename around for a release cycle or two).
More information about the OpenStack-dev