代码维护(业务代码堆积太多难维护)
代码维护(业务代码堆积太多难维护)
背景
最近业务需求变化快,时不时地要新增加个新功能。原来的功能代码太多了,如果在原来的基础上直接增加新功能,未免会让代码臃肿,变得难以维护,并且还有可能影响到原来的功能。我想到了利用消息队列来解耦,由于增加的功能是统计性的,也不是很重要,即使偶尔的失败也不影响,所以我选择Redis轻量级消息队列,利用简单发布订阅【不会持久化消息】来解耦新功能。
科普
消息队列的使用场景,作为一个程序员几乎都知道:解耦,异步,削峰。
业界常用的消息队列有3种:
RocketMQ,支持很多协议,重量级,更适合于企业级的开发,消息可靠。
kafaka 吞吐量高,主要用于日志系统。
redis 非stream消息队列
优点:轻量级 高效,搭建简单(这也是我这次选择的主要原因。)
缺点:不保证消息的可靠性。发布时若客户端不在线,则消息丢失,不能寻回。
消息队列的2种模型:
1 队列模型(生产者 消费者模型) 一个消息只被一个消费者拥有。
2 发布订阅模型 一个消息只被多个消费者拥有。
实战
1 配置好redis
2 订阅者者配置
3 发布者配置
写在最后
欢迎大家评论,转发。看到最后,我想重复申明redis消息队列不止这一种方式,还有一种可以持久化的方式,以后我会分享。
肖恩范宁(区块链技术的演进)肖恩范宁(区块链技术的演进)很多人谈论区块链,而真正对其基础做好研究的,为数不多。不从根本上去理解这一技术,便很难在商业上有所建树。比特币是区块链技术的源起。我们应该回到原点,探究
中国茂县(茂县5万亩青脆李成熟上市)中国茂县(茂县5万亩青脆李成熟上市)颜月月川观新闻记者徐登林文图盛夏时节,阿坝州茂县青脆李陆续成熟,进入采摘季。7月30日,在茂县凤仪镇宗渠村,记者看到成熟的李子挂满枝头,田间地头
南宁市电子地图(南宁市首版地图发布!)南宁市电子地图(南宁市首版地图发布!)南宁市首版七城区地图发布了!我们原来的小南宁变成长南宁了快看吧!旧版新版找到不同之处了吗?新版地图在原有的六城区的基础上增加了武鸣区,城市空间
单眼皮女生(单眼皮就不是大美人!)单眼皮女生(单眼皮就不是大美人!)当选秀节目越来越多时,我们却发现审美越来越单一了,各种清纯小白花被推上前台,各种精致网红脸被力捧。不管是谁,一出道就会好好做做脸,比如拉个欧式双眼
滕州地图(滕县旧地图,变化大不大?)滕州地图(滕县旧地图,变化大不大?)1983年滕县瘦身运动明清时候的滕县,民国时期的滕县,南北二百三十里,东西一百九十五里。原来胖胖的滕县,大约经过五次之多的瘦身之后,便变成了今天
我的世界观(我的世界观内外论!)我的世界观(我的世界观内外论!)清晨,当一缕缕阳光透过玻璃抚摸着我们的脸庞,那种惬意,让人欣慰,感恩大自然的馈赠。向外望去,阳光普照大地,在甘露的滋润下,大地油绿,百花争艳,万木参
霸王致癌(被质疑致癌后倒下,现状如何?)霸王致癌(被质疑致癌后倒下,现状如何?)对于现在国内的洗发水品牌,人们比较熟知的包括飘柔沙宣海飞丝等等。这些品牌之所以为人熟知,主要是因为它们曾经在电视上打过广告战。可能很多人都对
太阳系的奇迹(太阳系竟然有结界?)太阳系的奇迹(太阳系竟然有结界?)宇宙充满了无边的力量。太阳系只是无数星系中最小的一个。对于整个宇宙来说,太阳系很小,地球是微不足道的尘埃,人类诞生在像尘埃一样的生命星球上。人类文
华为畅享20pro(OPPOA95与华为畅享20Pro该选谁?)华为畅享20pro(OPPOA95与华为畅享20Pro该选谁?)对于5G中端机市场而言,华为畅享20Pro一直都会是消费者一个热门选择,过硬的品质与不错的配置水准,足以都满足不少消
唐山市工人医院(唐山市主要医院)唐山市工人医院(唐山市主要医院)1华北理工大学附属医院(三甲)华北理工大学附属医院是一所集医疗教学科研预防保健和康复为一体的综合性三级甲等医院。医院人才济济,技术雄厚。医院现有在职
能力训练(训练方式不容有误)能力训练(训练方式不容有误)随着孩子渐渐长大,独睡便成了一件摆在家长面前的头一件难题。让宝宝独睡宝妈不是担心宝宝怕黑,就是担心宝宝出现意外情况。不让宝宝独睡宝宝的自主能力又无法得到