我正在使用RabbitMQ,我希望在服务器端每次Exchange收到邮件时进行一次计算。
我排队等待收视,当收到太多不良评论(例如超过10条)时,应该通知消费者。
服务器端逻辑有哪些选择?我一直在阅读有关Spring RabbitMQ的内容,但不确定吗?
基于消息的系统并没有真正的“服务器端”。相反,RabbitMQ服务位于某个地方,并与任何数量的生产者和消费者之间传递消息。根据可用的硬件以及所执行的处理量,这些可能全部在同一服务器上,或者您可能有专用于每个任务的资源。
基于消息内容的计算是使用者的工作,只要您使用所有人都可以理解的消息序列化(例如JSON,XML),就可以用您感觉舒适的任何语言来编写消息。对于一个简单的计数器,您可能不需要太多框架来提取所需的数据。
任意数量的队列可以接收来自同一Exchange的邮件副本,因此您可以从交换中提取所有邮件并仅对差评进行计数,也可以将等级放入“路由键”并使用“主题交换” ”以对其进行预过滤。
之后,您可以使用像Redis这样的简单内存存储来存储计数器,当计数器达到极限时,可以在该使用者上对其进行操作,或者将消息发布到新的交易所以供其他使用者处理。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句