追求极限性能的情况下,会使用本地缓存如guachche,而要保证准确性需要当数据改变的时候通知所有缓存该数据的服务器;
可以使用redis的订阅模式实现,本文选用第二种方式
rabbitmq中,exchange有4个类型:direct,topic,fanout,header。
direct一般用户一个消息被单台服务消费一次(实践中本人只用过这个);
topic 可以根据表达式匹配;
该处主要用fanout的exchange,发送message的时候不指明队列,绑定在该exchange的所有队列都能收到该message,但因为单个应用往往会是多台模式,而代码是同一份,因此需要申明队列的时候队列名不重复,比如uuid。
都申明为不持久化,自动删除。