消息队列|青训营笔记

70 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 10 天

概念

消息队列”是在消息的传输过程中保存消息的容器。也可以理解为一个缓冲器、最佳的解释:指保存消息的一个容器,本质是一个队列,但这个队列支持高吞吐、高并发、并发高可用

发展历史

消息队列技术最早出现在 1970 年代末期,当时它被用于管理主机之间的打印作业。 随着分布式计算技术的发展,消息队列技术也得到了广泛的应用。

到 1980 年代,消息队列技术已经成为了分布式系统中的标准组件,并被用于许多不同的应用程序,包括电子邮件系统、文件传输系统和远程过程调用系统(TIB)。

在 1990 年代,随着互联网的普及,消息队列技术得到了进一步的发展。 公司开始使用消息队列来构建分布式系统,以实现数据同步、流量管理和其他功能(IBM MQ/WebSphere)。

近年来,随着云计算和微服务架构的兴起,消息队列技术又迎来了新的发展机遇。 现在,消息队列通常用于构建可伸缩、高可用的分布式系统,并且在云计算环境中得到了广泛的应用。

kafka

Kafka是由Apache软件基金会开发的一个开源流处理平台,由ScalaJava编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。

使用场景:{搜索服务、直播服务、订单服务、支付服务} 传入给Metrics数据

使用逻辑:创建集群、新增topic、编写生产者逻辑、编写消费者逻辑。

offset:消息在partition内相对位置信息,可以理解为唯一ID,在partition内部严格

总结

学习笔记记录到kafka的概念和使用过逻辑的大概说明以及如何理解深层的逻辑