[repo] Add a publish/subscribe mechanism for inter-instance communication using zmq
Each repo can have a publishing and any number of subscribing sockets
whose addresses are specified in the instance's configuration. An
application or cube can subscribe to some 'topics', and give a callback
that gets called when a message matching that topic is received.
As a proof of concept, this introduces a hook to clean up the caches
associated with the repository when an entity is deleted.
A subscription is added using Repository::zmq::add_subscription;
the callback receives a list representing the received multi-part
message as argument (the first element of the message is its topic).
.. role:: raw-html(raw)
:format: html
RSS driven
----------
RSS is a pretty useful technology that can be widely used on this
site. Any set of data can be presented as RSS. You can then plug in
an RSS reader into that and follow the site activity. For example :
:raw-html:`<p><a class="reference"
href="view?vid=rss&rql=Any+X%2CM+WHERE+X+modification_date+M+ORDERBY+M+DESC+LIMIT+30"><img
alt="rss" src="data/rss.png"> latest changes</a></p>`