本篇文章给大家分享的是有关redis中队列消息实现应用解耦,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
成都创新互联公司专注骨干网络服务器租用10年,服务更有保障!服务器租用,南充服务器托管 成都服务器租用,成都服务器托管,骨干网络带宽,享受低延迟,高速访问。灵活、实现低成本的共享或公网数据中心高速带宽的专属高性能服务器。
1、如果redis服务器挂掉了怎么办啊?
在采购模块的签收逻辑代码中做判断,如果入列成功则返回签收完成,如果入列失败这运行传统方法,通过接口入库的方法。如果redis也挂了,仓库模块也挂了怎么办啊,那你就收拾包袱回家吧。
2、如何实现传统方式那样实时入库啊?
采用redis的订阅发布模式就可以解决。订阅的代码放在仓库模块,发布的代码放在采购模块。
订阅代码sub.php
connect('localhost', 6379); $redis->subscribe(['ruku'], function ($redis, $chan, $msg) {//订阅入库频道 if($msg==2500){ //如果监听到有发布信息则从队列中拿取信息进行入库操作 。。。。。。。 } });
发布代码pub.php
connect('localhost', 6379); $order = ['id' => 1, 'name' => '小米6', 'price' => 2499, 'created_at' => '2017-07-14'];$redis->lpush('order',$order); $redis->publish("ruku", 2500);
以上就是redis中队列消息实现应用解耦,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。