这篇文章将为大家详细讲解有关Dubbo、Zookeeper、Redis、RabbitMQ的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
一、主要负责微信商城订单模块的开发
订单的逻辑:订单创建、订单支付、订单生产、订单确认、订单完成、取消订单等订单流程。还涉及到复杂的订单状态规则、订单金额计算规则以及增减库存规则等。
这个过程需要各个数据, 因此,订单系统接入所需的公共服务模块接口,在订单系统即可完成对接公共系统的服务。(自己在这个过程中做了什么?那些流程是自己做的?)
二、以前一个项目有多个类,一旦其中一个类出了问题,就会导致整个服务宕机,现在把一个项目拆分成多个微服务(生产者和消费者)(也就是表现层和服务层?) 就像两个单独的计算机,大家都知道两个单独的计算机不提供任何外界条件如网络环境,这两台计算机是无法同信的,那么回归到项目中,表现层和服务层两个单独的工程是如何通信的呢?实现远程通信的方法有:使用dubbo:使用RPC协议进行远程调用,直接使用socket通信。传输效率高,并且可以统计出系统之间的调用关系、调用次数 ,来解决这个宕机问题,从而使用Dubbo来管理这些微服务。
2. 解耦合。如果使用 MQ,A 系统产生一条数据,发送到 MQ 里面去,哪个系统需要数据自己去 MQ 里面消费。如果新系统需要数据,直接从 MQ 里消费即可;如果某个系统不需要这条数据了,就取消对 MQ 消息的消费即可。这样下来,A 系统压根儿不需要去考虑要给谁发送数据,不需要维护这个代码,也不需要考虑人家是否调用成功、失败超时等情况。
A 系统就跟其它系统彻底解耦了。
3.异步
以前同步的话,要分别等待ABCD分别执行完任务才响应给用户,这个过程需要3+300+450+200ms,而现在,则只需3+5秒即可。无需等待它们。
关于“Dubbo、Zookeeper、Redis、RabbitMQ的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。