
中间件
文章平均质量分 90
常用的中间件插件,方便服务中集成调用其api,无需考虑内部实现,middleware
lisin-lee-cooper
这个作者很懒,什么都没留下…
展开
-
RocketMQ原理及解析
1 如何保证消息的可靠性传输生产者丢失数据:生产者设置同步提交消息,并且手动提交,将消息同步刷盘到从节点后在返回成功,broker :主从复制,同步刷盘消费端:消费重试,只有返回consume_success 才算消费完成,保证消息的可靠性,最终还是消费16次还是失败的会进死信队列2.如何保证消息不被重复消费消费端消费消息的幂等1 服务端代码根据messageId 设置分布式锁,获取锁再做业务操作2 更新数据库时校验业务的状态3 或者设置唯一索引3.如何保证消息的顺序性...原创 2022-04-07 16:46:55 · 3174 阅读 · 0 评论 -
RocketMQ原理及解析
一.什么是消息队列RocketMQ是一个纯Java、分布式、队列模型的开源消息中间件,前身是MetaQ,是阿里参考Kafka特点研发的一个队列模型的消息中间件,后开源给apache基金会成为了apache的顶级开源项目,具有高性能、高可靠、高实时、分布式特点。官网地址:https://rocketmq.apache.org/Producer消息生产者,位于用户的进程内,Producer通过NameServer获取所有Broker的路由信息,根据负载均衡策略选择将消息发到哪个Broker,然后调用Br原创 2021-09-18 17:46:33 · 363 阅读 · 0 评论 -
自建RocketMQ中间件开发
一.RocketMQ简介RocketMQ是一个纯Java、分布式、队列模型的开源消息中间件,前身是MetaQ,是阿里参考Kafka特点研发的一个队列模型的消息中间件,后开源给apache基金会成为了apache的顶级开源项目,具有高性能、高可靠、高实时、分布式特点。更多内容可以查看官方文档 RocketMQ官方文档二.RocketMQ 正确订阅关系1.每个GroupId 对应一个微服务,一个微服务可以有多个节点,但是节点间的订阅关系必须一致,否则接收消息会紊乱2.一般一个服务发送一种消息,可以用原创 2021-07-03 17:23:50 · 289 阅读 · 0 评论 -
Mysql读写分离插件简化版
一.原理1.基于互联网背景,服务响应需要越来越快,从而衍生出读写分离,即让主数据库(master)处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库(slave)处理SELECT查询操作;2.避免慢查询长期占用链接,导致插入时变慢;或者避免插入时过慢影响查询速度;3.主数据库只做插入,从服务器只做修改,同时主服务器的修改需要同步到从服务器。4.服务启动时,配置好主从数据源,执行方法时根据注解ReadOnly选择正确从库(读库)数据源,默认选择主库(修改)数据源。二代码原创 2021-05-20 20:39:35 · 1077 阅读 · 6 评论 -
ratelimiter-starter 限流框架简化版
一.原理1.基于互联网背景,客户增长数剧增,服务稳定性受到严峻的挑战,机器CPU和内存秒秒钟打满,导致服务器宕机。2.为了实现服务高可用,CTO下达的指令一般都是说服务器需要达到99.99%可用,其实都是吹皮的,但是我们朝着这个目标矢志不渝地奋斗终生,从而实现自己的人生价值,进而实现中华民族的伟大复兴3.限流可用从不同的角度出发,市面上也有比较有名的阿里的Sentinel,感兴趣的同学可用去深究,本篇文章主要是从Java拦截器的限制用户多次请求的角度来限制用户的访问量,大家也可以基于此框架来定制适用于原创 2021-05-28 15:52:22 · 316 阅读 · 1 评论