我的Java开发生涯记(3) - Go语言中文社区

我的Java开发生涯记(3)


2019.6.18著

开心 ,今天我兄弟大早上给我做了个早餐,人逢好事精神爽,代码照样不会敲。(我居然说的这么为所欲为,不能忍不能忍)未来的我会是什么样的呢,我希望我是个非常6的大佬。bug秒解,需求看一眼就会的那种。现在还是脚踏实地安安心心攒攒经验吧!

 

对了还有一件事(哼,我可不是好人,我不收好人卡的哦)。

 

还是正事要紧啊!

今天又是一个bug,很简单,查询为什么售后订单没有推送sap,然而我看了半天就卡在一个地方。硬是找不到关键点。

这个是错误的代码,售后单不能只判断换货,也需要判断退货,所以导致有部分单子没有推送sap,状态也没修改。

 

至于我卡住的位子,我截个图解释下:

到这里就不知道怎么查了,其实问了别人之后发现好简单,只需要搜索画横线的地方就好了,往下走几步就直接定位到重点,然后断点调试五分钟就搞定了。这个属于消息队列。

 

消息队列:

消息队列( messagequeuing )使用消息将应用程序连接起来。这些消息通过像RabbitMQ,ActiveMQ 这样的消息代理服务器在应用程序之间路由。这就像是在应用程序之间放置一个邮局。

生产者与消费者代理服务器:

生产者( producer)创建消息,然后发布(发送)到代理服务器( RabbitMQ )。生产者将信息发送给Exchange并带有一个routing key,消费者从队列中获取消息。

消息:

什么是消息呢?消息包含两部分内容:有效载荷( payload )和标签( label )。有效载荷就是你想要传输的数据。标签描述了有效载荷,并且RabbitMQ 用它来决定谁将获得消息的拷贝。举例来说,不同于TCP 协议的是,当你明确指定发送方和接收方时, AMQP 只会用标签表述这条消息(一个交换器的名称和可选的主题标记),然后把消息交由Rabbit。 Rabbit会根据标签把消息发送给感兴趣的接收方。这种通信方式是一种“发后即忘”( fire-and-forget )的单向方式。

发布订阅模式:

简单的来说就是群发消息,广播

点对点模式:

一对一的消息,打电话

那么消息队列到底解决了什么问题呢?

1.实现一个异步的调用,提高程序的执行效率

2.应用解耦,方便程序的开发与维护

3.流量削峰(秒杀用得很多,具体我也不理解,先记着再说,以后在研究)

4.商城整合RabbitMQ

        ①后台管理系统修改、新增商品、删除要通知到其他系统,其他系统要接受到消息,完成自己的业务逻辑。

        ②后台系统:发送消息到交换机。

        ③前台系统:接受消息,更新、删除的消息。

        ④搜索系统:接受消息,新增、更新、删除的消息。

------

 

 

别人家的吃的都还吃,别人家的用的都好用,别人家的代码都简单。万恶的别人家的。

 

总结:细节决定成败啊!昨天加班到两点,今天有点摸鱼了,嗯~(思考的表情)应该是我没穿战袍(格子衫),所以战斗力不强,必须的配一件啊,哈哈哈啊哈啊哈哈哈

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_43908950/article/details/92795222
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-19 14:37:52
  • 阅读 ( 740 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢