消息队列
文章平均质量分 95
Kafka和RockerMQ最佳实践
Java架构何哥
从事政务信息化、大数据治理、智慧党建相关工作
展开
-
SpringBoot快速集成Kafak
前言:Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。Apache Kafka与传统消息系统相比,有以下不同: 它被设计为一个分布式系统,易于向外扩展; 它同时为发布和订阅提供高吞吐量; 它支持多订阅者,当失败时能自动平衡消费者; 它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序。 一、Kaf原创 2021-09-28 01:27:49 · 1761 阅读 · 0 评论 -
Kafka百万级吞吐量的秘密
前言:我们都知道 Kafka 是基于磁盘进行存储的,但 Kafka 官方又称其具有高性能、高吞吐、低延时的特点,其吞吐量动辄几十上百万。小伙伴们是不是有点困惑了,一般认为在磁盘上读写数据是会降低性能的,因为寻址会比较消耗时间。那 Kafka 又是怎么做到其吞吐量动辄几十上百万的呢?Kafka 高性能,是多方面协同的结果,包括宏观架构、分布式 partition 存储、ISR 数据同步、以及“无所不用其极”的高效利用磁盘和操作系统特性。一、磁盘顺序读写磁盘的顺序读写的情况下,磁盘的顺序读写速度和原创 2021-09-24 16:59:56 · 2375 阅读 · 0 评论 -
Kafak快速入门攻略
一、Kafka简介1.1、Kafak概述1.2、Kafak诞生背景我们先看看 Kafka 官网给自己下的定义:Apache Kafka is an open-source distributed event streaming platform.翻译成中文就是:Apache Kafka 是一个开源的分布式流处理平台。Kafka 不是一个消息系统吗?为什么被称为分布式的流处理平台呢?这两者是一回事吗?一定有读者会有这样的疑问,要解释这个问题,需要先从 Kafka 的诞生背景原创 2021-09-24 00:07:03 · 2447 阅读 · 1 评论 -
Kafka、RocketMQ、Pulsar全方位对比
前言:随着大数据时代的到来,Apache 旗下的 Kafka 一度成为消息队列的代名词,提起消息队列大家自然而然就想到了 Kafka。然而消息队列本身是服务器端解决问题的一种通用方案,它的背后有着一些通用的设计思想和经典模型,这些是消息队列的精髓和灵魂。Kafka 和 RocketMQ 是目前最热门的两种消息中间件,互联网公司应用最为广泛,消息中间件已经成为Java后端工程师必备的一项技能。一、消息队列使用的五种场景简介MQ全称为Message Queue, 消息队列是一种应用程序对应用程序的通信原创 2021-09-16 02:37:32 · 6787 阅读 · 2 评论 -
SpringBoot整合RabbitMQ:Direct类型交换机
前言:本篇博客主要介绍SpringBoot中如何根据直连型交换机去使用RabbitMQTemplate,Direct模式的Exchange根据消息携带的路由值将消息投递给对应队列。一、RabbitMQ通信模型和Exchange类型1.1、RabbitMQ通信模型在代码中使用MQ发送消息的过程是异步执行的,消息到达RabbitMQ后,会在通信模型中找到适合的队列进行入队。RabbitMQ通信模型下面来看看消息到达RabbitMQ会发生什么,Exchange会将消息通过RoutingKey将原创 2022-01-04 17:20:50 · 2899 阅读 · 0 评论 -
RabbitMQ快速入门攻略
前言:前不久开发了一个消息通知系统采用了WebSocket+RabbitMQ技术,因为并发量不算大,且RabbitMQ是实现了比较完备的消息队列的功能不用过多开发。这里简单作个RabbitMQ消息队列总结,以后还是要学习学习Kafka消息中间件。一、RabbitMQ简介1.1、RabbitMQ概述RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应原创 2021-09-16 23:20:41 · 846 阅读 · 1 评论 -
WebSocket+RabbitMQ实现消息推送系统
一、用户获取新的消息通知有两种模式 上线登录后向系统主动索取 在线时系统向接收者主动推送新消息 设想下,用户的通知消息和新通知提醒数据都放在数据库中,数据库的读写操作频繁。如果消息量大,DB压力较大,可能出现数据瓶颈。这时候就可以引入消息队列RabbitMQ进行流量削峰。向指定用户发送WebSocket消息并处理对方不在线的情况给指定用户发送消息:如果接收者在线,则直接发送消息; 否则将消息存储到redis,等用户上线后主动拉取未读消息。...原创 2021-09-18 04:10:27 · 18423 阅读 · 3 评论