
消息队列
一点一滴g
这个作者很懒,什么都没留下…
展开
-
Kafka简介
转自 https://help.aliyun.com/product/68138.html概述消息队列 Kafka 是一个分布式的、高吞吐量、高可扩展性消息队列服务,广泛用于日志收集、监控数据聚合、流式数据处理、在线和离线分析等大数据领域,是大数据生态中不可或缺的产品之一。消息队列 Kafka 针对开源的 Kafka 提供全托管服务,彻底解决开源产品长期以来的痛点,用户只需专注于业务开发...转载 2019-05-25 19:10:33 · 196 阅读 · 0 评论 -
Kafka水位(high watermark)与leader epoch
水位或水印(watermark)一词,也可称为高水位(high watermark),通常被用在流式处理领域(比如Apache Flink、Apache Spark等),以表征元素或事件在基于时间层面上的进度。一个比较经典的表述为:流式系统保证在水位t时刻,创建时间(event time) = t’且t’ ≤ t的所有事件都已经到达或被观测到。在Kafka中,水位的概念反而与时间无关,而是与位置信...原创 2019-05-25 21:40:35 · 673 阅读 · 0 评论 -
消息队列设计精要总结
队列高级特性设计上面都是些消息队列基本功能的实现,下面来看一些关于消息队列特性相关的内容,不管可靠投递/消息丢失与重复以及事务乃至于性能,不是每个消息队列都会照顾到,所以要依照业务的需求,来仔细衡量各种特性实现的成本,利弊,最终做出最为合理的设计。可靠投递(最终一致性)这是个激动人心的话题,完全不丢消息,究竟可不可能?答案是,完全可能,前提是消息可能会重复,并且,在异常情况下,要接受消息的...转载 2019-06-17 21:22:47 · 167 阅读 · 0 评论 -
消息队列的常见模式
pushPush即服务端主动发送数据给客户端。在服务端收到消息之后立即推送给客户端。当 Producer 发出的消息到达后,服务端马上将这条消息投递给 Consumer。客户端连接到broker之后,启动一个线程,这个线程的任务就是循环调用方法从broker中拉取相应的消息至本地。如果是异步方法调用,则直接调用监听器方法,间接调用业务消费消息的方法,而不使用本地内存进行消息的缓存;所以这里...原创 2019-07-25 19:23:31 · 1046 阅读 · 0 评论 -
kafka设计之幂等性和事务
HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同幂等实现幂等的关键点就是服务端可以区分请求是否重复,过滤掉重复的请求。要区分请求是否重复的有两点:唯一标识:要想区分请求是否重复,请求中就得有唯一标识。例如支付请求中,订单号就是唯一标识记录下已处理过的请求标识...原创 2019-08-28 12:45:35 · 804 阅读 · 0 评论