RabbitMQ direct integration with MySQL/Percona

Hi all,

More and more, message queue servers are added to web application stacks. This is especially important for HP sites.

Publishing and consuming messages from PHP is easy. There are even two libraries to choose from :slight_smile:

However, some of business logic is often implemented in database. This involves situations when DB makes changes to important fields, which should be visible on web site asap. However, HP web application often use some of caching solutions. It would be very good if change done by trigger or stored procedure executed in MySQL/Percona, is announced so that cache can be invalidated.

The best approach to announce change of data is by publishing message (eg. by using AMQP and RabbitMQ).

I have developred very simple UDF, as proof of concept, which can be used. However, AMQP is not so simple. There are many types of exchanges, several options for queues, ways to route messages, etc. It looks to me that specialized storage engine would be better solution. Something similar to SphinxSE.

Does anyone know of anything has been done in this direction, either as UDF or SE?


Good question. Here’s a UDF memcache for MySQL that is similar to what you are describing. I can’t vouch for it, Google found it for me.