![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
高性能-异步与消息中间件
文章平均质量分 80
(1)高性能-(4)异步与消息中间件
^果然好^
这个作者很懒,什么都没留下…
展开
-
RocketMQ -Docker安装
docker search rocketmqdocker pull docker.io/rocketmqinc/rocketmq启动NameServer:docker run -d -p 9876:9876 --name rmqserver foxiswho/rocketmq:server-4.5.1启动broker:docker run -d -p 10911:10911 -p 10909:10909\ --name rmqbroker --link rmqserver:n.原创 2022-01-28 17:25:36 · 176 阅读 · 0 评论 -
RocketMQ-03
1. 高级功能1.1 消息存储分布式队列因为有高可靠性的要求,所以数据要进行持久化存储。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lY1snCGb-1636376343195)(img/消息存储方式.png)]消息生成者发送消息MQ收到消息,将消息进行持久化,在存储中新增一条记录返回ACK给生产者MQ push 消息给对应的消费者,然后等待消费者返回ACK如果消息消费者在指定时间内成功返回ack,那么MQ认为消息消费成功,在存储中删除消息,即执行第6步;原创 2021-11-08 20:59:48 · 147 阅读 · 0 评论 -
RocketMQ-02
1. 案例介绍1.1 业务分析模拟电商网站购物场景中的【下单】和【支付】业务###1)下单[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HO34Pfst-1636376285209)(img/下单组件图.png)]用户请求订单系统下单订单系统通过RPC调用订单服务下单订单服务调用优惠券服务,扣减优惠券订单服务调用调用库存服务,校验并扣减库存订单服务调用用户服务,扣减用户余额订单服务完成确认订单###2)支付[外链图片转存失败,源站可能有防盗链机制原创 2021-11-08 20:58:52 · 101 阅读 · 0 评论 -
RocketMQ-01
1. MQ介绍##1.1 为什么要用MQ消息队列是一种“先进先出”的数据结构[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OwUmthXr-1636376192358)(img/queue1.png)]其应用场景主要包含以下3个方面应用解耦系统的耦合性越高,容错性就越低。以电商应用为例,用户创建订单后,如果耦合调用库存系统、物流系统、支付系统,任何一个子系统出了故障或者因为升级等原因暂时不可用,都会造成下单操作异常,影响用户使用体验。[外链图片转存失败,源站原创 2021-11-08 20:57:12 · 166 阅读 · 0 评论 -
apache kafka系列之server.properties配置
每个kafka broker中配置文件server.properties默认必须配置的属性如下:broker.id=0num.network.threads=2num.io.threads=8socket.send.buffer.bytes=1048576socket.receive.buffer.bytes=1048576socket.request.max.bytes=10...原创 2019-04-22 17:54:20 · 268 阅读 · 0 评论 -
分布式事务(6)-分布式事务处理技术之RocketMQ
概念Rocket MQ是阿里开发的一个分布式的开源消息队列组件,目前由Apache开源组织维护,最新版本是5.3.0,已经支持事务消息。事务消息可以确保本地事务 与 发送消息 之间的原子性,相关概念:1、Half(Prepare) MessageProducer已经把消息发送给Mq服务器,但是Mq服务器尚未收到生产者的第二次Ack,这个时候消息会被标记为"temporarily undeliverable",目前消息的状态为 HalfMessage。2、Message Status C.原创 2021-04-21 15:06:51 · 699 阅读 · 0 评论 -
MQ实战-削峰填谷
对于突然到来的大量请求,您可以配置流控规则,以稳定的速度逐步处理这些请求,起到“削峰填谷”的效果,从而避免流量突刺造成系统负载过高。1、场景请求的到来,往往是没有规律的。例如,某应用的处理能力是每秒 10 个请求。在某一秒,突然到来了 30 个请求,而接下来两秒,都没有请求到达。在这种情况下,如果直接拒绝 20 个请求,应用在接下来的两秒就会空闲。所以,需要把请求突刺均摊到一段时间内,...原创 2019-04-29 10:22:11 · 14954 阅读 · 0 评论 -
kafka学习(7)-Springboot整合kafka-多线程
目录1、多线程生产者2、多线程消费者2.1、Consumer为何需要实现多线程2.2、多线程的Kafka Consumer 模型类别2.2.1、模型一:多个Consumer且每一个Consumer有自己的线程2.2.2、模型二:一个Consumer且有多个Worker线程1、多线程生产者kafka目前在0.9版本后采用java版本实现,生产者KafkaProd...原创 2019-04-28 16:52:24 · 10352 阅读 · 5 评论 -
kafka学习(6)-Springboot整合kafka-消费者手动
目录1、场景2、代码2.1、生产者、消费者配置文件2.2、生产者发送100条测试数据2.3、消费者收取100条测试数据-自动2.4、消费者收取100条测试数据-手动2.4.1、手动提交注释不打开2.4.2、手动提交注释打开1、场景上一篇kafka的consumer消费者,我们使用的是自动提交offset下标。但是offset下标自动提交其实在很多场...原创 2019-04-28 13:23:32 · 7549 阅读 · 1 评论 -
kafka学习(5)-Springboot整合kafka
目录1、准备2、pom.xml3、application.properties3.1、producer的配置参数3.2、consumer的配置参数3.3、listener的配置参数4、provider5、consumer问题1、准备使用的kafka的时候要注意,kafka客户端(kafka-client)的版本要和kafka服务器的版本...原创 2019-04-23 19:56:00 · 395 阅读 · 0 评论 -
kafka学习(4)-重复消费和丢失数据
目录1、Kafka保证数据不丢失的原理1.1、kafka消息的位置1.2、生产者数据的不丢失1.3、消费者数据的不丢失1.4、kafka 的offset的重置1.4.1、查询topic的offset的范围1.4.2、设置consumer group的offset1.4.3、手动更新Kafka存在Zookeeper中的偏移量(新版本不再zookeeper里面设定)...原创 2019-04-25 11:42:05 · 759 阅读 · 0 评论 -
kafka学习(3)-Group 、分区、多线程消费
1、分区、Group原理图 2、原理描述一个topic 可以配置几个partition,produce发送的消息分发到不同的partition中,consumer接受数据的时候是按照group来接受,kafka确保每个partition只能同一个group中的同一个consumer消费,如果想要重复消费,那么需要其他的组来消费。Zookeerp...原创 2019-04-23 15:37:33 · 940 阅读 · 0 评论 -
kafka学习(2)-常用命令
查看版本 没有命令供查看 2.11是scala版本,2.1.1是kafka版本启动kafka-server-start.sh /kafka/config/server.properties &关闭kafka-server-stop.sh 或者 kill -9 pid帮助信息./kafka-topics.sh --help...原创 2019-04-23 14:48:59 · 248 阅读 · 0 评论 -
kafka学习(1)-概念
目录一、简介1.1 概述1.2 消息系统介绍1.3 点对点消息传递模式1.4 发布-订阅消息传递模式二、Kafka的优点2.1 解耦2.2 冗余(副本)2.3 扩展性2.4 灵活性&峰值处理能力2.5 可恢复性2.6 顺序保证2.7 缓冲2.8 异步通信三、常用Message Queue对比3.1 RabbitMQ3.2 ...原创 2019-04-23 11:27:46 · 759 阅读 · 0 评论 -
zookeeper+kafka安装配置(2)-可视化
安装下载安装(注意版本):http://www.kafkatool.com/download.html使用配置以字符串的形式显示kafka消息体注释:更改完Content Types,要点击Update和Refresh按钮再次查看kafka的数据:...原创 2019-04-23 17:43:51 · 358 阅读 · 0 评论 -
zookeeper+kafka安装配置(1)
准备工作 操作系统:CentOS7 Kafka版本:kafka_2.10 Kafka官网下载:官网链接 JDK版本:1.8.0_171 zookeeper-3.4.10zookeeper安装配置curl -L -O http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.10/zo...原创 2019-04-23 10:46:04 · 238 阅读 · 0 评论