- 博客(6)
- 资源 (9)
- 收藏
- 关注
原创 rabbitMQ的消费者消息确认机制的说明 Consumer ACK
## rabbitMQ如何保证消息被消费者成功消费?前面我们讲了生产者发送确认机制和消息的持久化存储机制,然而这依然无法完全保证整个过程的可靠性,因为如果消息被消费过程中业务处理失败了但是消息却已经出列了(被标记为已消费了),我们又没有任何重试,那结果跟消息丢失没什么分别。RabbitMQ在消费端会有Ack机制,即消费端消费消息后需要发送Ack确认报文给Broker端,告知自己是否已消费完成,否则可能会一直重发消息直到消息过期(AUTO模式)。这也是我们之前一直在讲的“最终一致性”、“可恢复.
2021-08-09 17:32:50
290
原创 rabbitMQ的学习第一篇(持续更新)
rabbitMQ的学习目标需要带着目的去学习一项技术,在学习中深入思考感受,1:mq的使用场景2:几种mq什么时候选择rabbitMQ3:MQ保存和消费消息的性能于其他MQ的对比4:系统的qps,系统的承受能力5;消息的投递与消费:1.正确投递2消息正确消费3. 消息幂等性4. 消息的分布式存储使用实例:在高并发情况下,添加商品,更新倒排索引和更新页面静态化数据需要一起执行,不仅需要严格控制事务,还要保证执行效率.添加商品的并发比较大,效率极其低下.如果采用多线程的方式田勇,也是基于一
2021-08-05 14:52:30
276
原创 RabbitMQ的交换机类型介绍
RaabbitMQ常用的交换机类型有四种,分别为:fanout,direct,topic,headers.1:Fanout Exchange没有指定的BindIngs和路由键信息,交换机收到消息后,一广播模式发送到消息队列queue中.2:Direct Exchange有明确的Bindings信息和RoutKey信息,direct类型的交换机规则比较简单,他会把消息路由到BindingKey和RoutingKey完全匹配队列中.缺点:没有找到消息,消息会丢失.3:Topic Exchange
2021-07-30 18:07:21
309
原创 MongoDB 索引底层实现原理分析
MongoDB 索引底层实现原理分析MongoDB 是文档型的数据库,它使用BSON 格式保存数据,比关系型数据库存储更方便。比如之前关系型数据库中处理用户、订单等数据要建立对应的表,还要建立它们之间的关联关系。但是BSON就不一样了,我们可以把一条数据和这条数据对应的数据都存入一个BSON对象中,这种形式更简单,通俗易懂。MySql是关系型数据库,数据的关联性是非常强的,区间访问是常见的一种情况,底层索引组织数据使用B+树,B+树由于数据全部存储在叶子节点,并且通过指针串在一起,这样就很容易的进
2021-07-30 13:51:31
1056
2
原创 MySQL运行机制-从入门到京东
①建立连接(Connectors&Connection Pool),通过客户端/服务器通信协议与MySQL建立连接。MySQL 客户端与服务端的通信方式是 “ 半双工 ”。对于每一个 MySQL 的连接,时刻都有一个线程状态来标识这个连接正在做什么。通讯机制:全双工:能同时发送和接收数据,例如平时打电话。半双工:指的某一时刻,要么发送数据,要么接收数据,不能同时。例如早期对讲机单工:只能发送数据或只能接收数据。例如单行道线程状态:show processlist; //查看用户正在.
2021-07-29 20:55:41
154
原创 面向对象编程三大特征---封装、继承、多态
面向对象编程三大特征---封装、继承、多态 ,我们已经讲解了两个,今天主要讲解多态机制。https://www.jianshu.com/p/68ddb5484ca2 创建父类对象的多种不同的实现方式即为多态。多态性是允许你将父对象设置成为一个或更多的他的子对象"相等"的技术。 Person类 (父类) --- Student (子类) --- Worke...
2019-11-04 21:50:39
159
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人