复述中队列消息实现应用解耦

  介绍

本篇文章给大家分享的是有关复述中队列消息实现应用解耦,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强> 1,如果复述,服务器挂掉了怎么办啊?

在采购模块的签收逻辑代码中做判断,如果入列成功则返回签收完成,如果入列失败这运行传统方法,通过接口入库的方法。如果复述,也挂了,仓库模块也挂了怎么办啊,那你就收拾包袱回家吧。

<强> 2,如何实现传统方式那样实时入库啊?

采用复述的订阅发布模式就可以解决。订阅的代码放在仓库模块,发布的代码放在采购模块。

订阅代码子。php

& lt; php ?   $ redis =, new 复述();   复述→美元连接(& # 39;localhost # 39;,, 6379);   复述→美元订阅([& # 39;ruku& # 39;],, function (复述,美元,美元chan,味精美元),{//订阅入库频道如果(味精==2500美元){,//如果监听到有发布信息则从队列中拿取信息进行入库操作,,.......,}   });

发布代码酒吧。php

& lt; php ?   $ redis =, new 复述();   复述→美元连接(& # 39;localhost # 39;,, 6379);   order 美元;=,(& # 39;id # 39;,=祝辞,1,& # 39;名字# 39;,=祝辞,& # 39;小米6 & # 39;,,& # 39;价格# 39;,=祝辞,2499年,& # 39;created_at # 39;,=祝辞,& # 39;2017 - 07 - 14 & # 39;];复述→美元lpush(& # 39;订单# 39;美元顺序);   复述→美元发布(“ruku",, 2500);

复述中队列消息实现应用解耦