随笔分类 -  MQ消息队列-MQ

Java Message Queue 消息队列
摘要:阿里太注重原理了:阿里问kafka如何实现高并发存储-如何找到一条需要消费的数据,kafka用了稀疏索引的方式,使用了二分查找法,其实很多索引都是二分查找法 二分查找法的时间复杂度:O(logn) redis,kafka,B+树的底层都采用了二分查找法 参考:二分查找法 redis的索引底层的 跳表 阅读全文
posted @ 2019-09-07 15:58 aspirant 阅读(9330) 评论(2) 推荐(2) 编辑
摘要:什么是MQ? MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。MQ是消费-生产者模型的一个典型的代表,一端往消息队列中不断写入消息,而另一端则可以读取队列中的消息。 RabbitMQ是MQ的一种。下面详细介绍一下RabbitMQ的基本概念。 1、队列、生产 阅读全文
posted @ 2018-08-09 19:37 aspirant 阅读(10518) 评论(1) 推荐(4) 编辑
摘要:我写了另一篇zookeeper选举机制的,可以参考:zookeeper 负载均衡 核心机制 包含ZAB协议(滴滴,阿里面试) 一、zookeeper 与kafka保持数据一致性的不同点: (1)zookeeper使用了ZAB(Zookeeper Atomic Broadcast)协议,保证了lead 阅读全文
posted @ 2018-06-13 17:48 aspirant 阅读(18517) 评论(1) 推荐(4) 编辑
摘要:一、kafka 简介 今社会各种应用系统诸如商业、社交、搜索、浏览等像信息工厂一样不断的生产出各种信息,在大数据时代,我们面临如下几个挑战: 以上几个挑战形成了一个业务需求模型,即生产者生产(produce)各种信息,消费者消费(consume)(处理分析)这些信息,而在生产者与消费者之间,需要一个 阅读全文
posted @ 2018-04-13 15:30 aspirant 阅读(2133) 评论(0) 推荐(0) 编辑
摘要:一、消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 典型的:Kafka==》发布订阅系统 阅读全文
posted @ 2018-04-10 14:42 aspirant 阅读(3016) 评论(1) 推荐(0) 编辑
摘要:一、JMS是个什么鬼 1、百度百科解释:JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MO 阅读全文
posted @ 2018-04-10 14:41 aspirant 阅读(636) 评论(0) 推荐(0) 编辑
摘要:注意:该随笔内容完全引自http://wsmajunfeng.iteye.com/blog/1629354,写的很好,非常感谢,复制过来算是个积累,怕以后找不到。 一. 前言 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高 阅读全文
posted @ 2018-03-27 15:39 aspirant 阅读(40609) 评论(2) 推荐(8) 编辑
摘要:并发队列的选择 Java的并发包提供了三个常用的并发队列实现,分别是:ArrayBlockingQueue、ConcurrentLinkedQueue 和 LinkedBlockingQueue 。 ArrayBlockingQueue是初始容量固定的阻塞队列,我们可以用来作为数据库模块成功竞拍的队 阅读全文
posted @ 2017-06-07 17:55 aspirant 阅读(1419) 评论(0) 推荐(0) 编辑