随笔分类 -  MQ

摘要:1 为什么用消息队列 1)解耦。服务之间没有强依赖,不需要关心调用服务时出现的各种异常,服务挂掉后接口超时等问题 2)异步。解决接口调用多服务时延时高的问题 3)高峰期服务间缓冲。解决工作节奏不一致问题,防止服务被打死 2 消息丢失了怎么办 消息丢失有3种情况: 1)consumer消费时如果在拉取 阅读全文
posted @ 2019-06-19 17:25 soft.push("zzq") 阅读(264) 评论(0) 推荐(0)
摘要:1:kafka可以通过多个broker形成集群,来存储大量数据;而且便于横向扩展。 2:kafka信息存储核心的broker,通过partition的segment只关心信息的存储,而生产者只负责向leader角色的partition提交数据,而消费者pull数据的时候自己通过zk存储offset信 阅读全文
posted @ 2019-06-14 22:17 soft.push("zzq") 阅读(1235) 评论(0) 推荐(0)
摘要:kafka分区,默认行为: 如果key为null,则按照一种轮询的方式来计算分区分配 如果key不为null则使用称之为murmur的Hash算法(非加密型Hash函数,具备高运算性能及低碰撞率)来计算分区分配。 import org.apache.kafka.clients.consumer.Co 阅读全文
posted @ 2019-06-13 22:10 soft.push("zzq") 阅读(303) 评论(0) 推荐(0)
摘要:#kafka为什么有高吞吐量 1 由于接收数据时可以设置request.required.acks参数,一般设定为1或者0,即生产者发送消息0代表不关心kafka是否接收成功,也就是关闭ack;1代表kafka端leader角色的patation(多个patation,并且每个会有多个副本)接收到数 阅读全文
posted @ 2019-05-09 11:03 soft.push("zzq") 阅读(338) 评论(0) 推荐(0)
摘要:file:${activemq.conf}/credentials.properties element is used to configure the ActiveMQ broker. --> ... 阅读全文
posted @ 2017-06-02 17:13 soft.push("zzq") 阅读(192) 评论(0) 推荐(0)