一个好的程序员,应该能设计出好的架构,而好的架构的各个系统之间往往是低耦合的,而消息队列,正是一个解耦的神器。 (1) 消息队列,也称消息中间件,主要优点是解耦、削峰、异步扩展性;并且kafka还能保证消息是顺序消费; (2) Kafka会将数据写到磁盘,所以不用担心数据断电丢失,所以,有时候,ka ...
分类:
其他好文 时间:
2020-04-29 17:55:16
阅读次数:
66
原文:最通俗易懂的Redis发布订阅及代码实战 发布订阅简介 除了使用List实现简单的消息队列功能以外,Redis还提供了发布订阅的消息机制。在这种机制下,消息发布者向指定频道(channel)发布消息,消息订阅者可以收到指定频道的消息,同一个频道可以有多个消息订阅者,如下图: Redis也提供了... ...
分类:
其他好文 时间:
2020-04-28 00:36:19
阅读次数:
56
1、Redis = NoSql数据库、缓存服务器、简易消息队列 参考自: ① https://www.cnblogs.com/Chenjiabing/p/12784747.html ②https://www.cnblogs.com/xichji/p/11286443.html 缓存穿透:查询缓存服务 ...
分类:
其他好文 时间:
2020-04-27 17:35:13
阅读次数:
51
Apache Kafka 是一款开源的消息引擎系统 “消息队列”“消息中间件”的提法想必你一定是有所耳闻的 这类系统引以为豪的消息传递属性,就像引擎一样,具备某种能量转换传输的能力 消息引擎系统的功能 消息引擎传输的对象是消息; 如何传输消息属于消息引擎设计机制的一部分 既然消息引擎是用于在不同系统 ...
分类:
其他好文 时间:
2020-04-27 13:29:10
阅读次数:
62
真的想尽快学完种种框架,综合搭建起一个项目来,然后看着他出Bug、慢慢地自己去优化,重构,再完善。 1. RabbitMQ的作用 笔者经常能看到MQ这个词,知道其作为消息队列,但始终没有接触过,现在刚好有个机会(不知道在抢答系统中能不能用上),首先当然要知道MQ有什么作用: 异步处理: 用户注册:注 ...
分类:
其他好文 时间:
2020-04-27 09:28:00
阅读次数:
48
Netty获取异步执行结果 步骤:(具体代码参考下面demo) 1. 给消息设置个唯一key 2. 初始化响应消息队列:responseMsgCache.put(key,new LinkedBlockingQueue(1)); 3. 执行异步IO:future.addListener 4. 阻塞等待 ...
分类:
Web程序 时间:
2020-04-26 20:42:13
阅读次数:
463
MQ全称为Message Queue,是一种应用程序对应用程序的通信方法,应用程序通过读写出入消息队列的数据来通信,从而无需专用连接来链接他们(如RPC)。 消息队列是典型的生产者和消费者模型,生产者和消费者只关心消息的发送和接受,没有业务逻辑的侵入,实现了生产者和消费者的解耦。 AMQP:一个提供 ...
分类:
其他好文 时间:
2020-04-23 22:56:09
阅读次数:
72
消息队列1、为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ都有什么优点和缺点?2、如何保证消息队列的高可用?3、如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?4、如何保证消息的可靠性传输?或者说,如何处理消息丢失的问题?5、如何保证消息的顺序性?6、如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几
分类:
其他好文 时间:
2020-04-21 18:45:19
阅读次数:
60
参考文档:https://www.cnblogs.com/ericli-ericli/p/5917018.html MQ的使用场景大概包括解耦,提高峰值处理能力,送达和排序保证,缓冲等。 MQ概述 消息队列技术是分布式应用间交换信息的一种技术。 消息队列可驻留在内存或磁盘上,队列存储消息直到它们被应 ...
分类:
其他好文 时间:
2020-04-21 09:45:03
阅读次数:
77