架构师
文章平均质量分 74
从入门到京东
每天一个小知识,健康又快乐
展开
-
rabbitMQ的消费者消息确认机制的说明 Consumer ACK
## rabbitMQ如何保证消息被消费者成功消费? 前面我们讲了生产者发送确认机制和消息的持久化存储机制,然而这依然无法完全保证整个过程的 可靠性,因为如果消息被消费过程中业务处理失败了但是消息却已经出列了(被标记为已消费了),我 们又没有任何重试,那结果跟消息丢失没什么分别。 RabbitMQ在消费端会有Ack机制,即消费端消费消息后需要发送Ack确认报文给Broker端,告知自 己是否已消费完成,否则可能会一直重发消息直到消息过期(AUTO模式)。 这也是我们之前一直在讲的“最终一致性”、“可恢复.原创 2021-08-09 17:32:50 · 253 阅读 · 0 评论 -
rabbitMQ的学习第一篇(持续更新)
rabbitMQ的学习目标 需要带着目的去学习一项技术,在学习中深入思考感受, 1:mq的使用场景 2:几种mq什么时候选择rabbitMQ 3:MQ保存和消费消息的性能于其他MQ的对比 4:系统的qps,系统的承受能力 5;消息的投递与消费: 1.正确投递 2消息正确消费 3. 消息幂等性 4. 消息的分布式存储 使用实例:在高并发情况下,添加商品,更新倒排索引和更新页面静态化数据需要一起执行,不仅需要严格控制事务,还要保证执行效率.添加商品的并发比较大,效率极其低下.如果采用多线程的方式田勇,也是基于一原创 2021-08-05 14:52:30 · 246 阅读 · 0 评论 -
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 · 274 阅读 · 0 评论 -
MongoDB 索引底层实现原理分析
MongoDB 索引底层实现原理分析 MongoDB 是文档型的数据库,它使用BSON 格式保存数据,比关系型数据库存储更方便。比如之前关 系型数据库中处理用户、订单等数据要建立对应的表,还要建立它们之间的关联关系。但是BSON就不 一样了,我们可以把一条数据和这条数据对应的数据都存入一个BSON对象中,这种形式更简单,通俗易 懂。MySql是关系型数据库,数据的关联性是非常强的,区间访问是常见的一种情况,底层索引组织数 据使用B+树,B+树由于数据全部存储在叶子节点,并且通过指针串在一起,这样就很容易的进原创 2021-07-30 13:51:31 · 922 阅读 · 2 评论