RabbitMQ 教程1

200次阅读
没有评论
RabbitMQ 教程 1

什么是 RabbitMQ

今天,我们将开始一个全新的 RabbitMQ 教程系列。RabbitMQ 是一种分布式消息代理。对于那些不熟悉消息代理的人来说,它基本上是一种允许应用程序相互通信并交换消息的软件。

例如,一条消息可以指示用户在电商应用中将新产品添加到购物车中,或者用户从新设备登录到其帐户。

那么,你可能会问,为什么我需要在我的应用程序中使用消息代理?消息代理相对于简单的 API 系统来说,增加了一定的复杂性,但从长远来看,它可以带来许多好处。

RabbitMQ 的优势

消息代理的使用非常流行,因为它允许工程师创建松耦合的应用程序,并允许系统的新部分无缝添加而不影响现有系统。这在微服务架构中非常常见,因此开发人员必须了解这一主题。

RabbitMQ 教程 1

包括 RabbitMQ 在内的大多数消息总线都是异步操作的,这意味着它们不遵循简单的请求 - 响应模式,我们不必等待回复。我们将在后面详细介绍这一点,但将这种方法与现代微服务架构结合使用,可以帮助我们实现出色的扩展性和可靠性。

在系列的后续部分,我们将深入探讨像 RabbitMQ 这样的消息代理在常见应用中的具体实现方式。

RabbitMQ 的流行

正如你从 RabbitMQ 网站 上看到的,RabbitMQ 是最广泛部署的开源消息代理。它非常受欢迎。包括 Reddit、Accenture 和 NASA 在内的跨国科技公司都在使用它,此外,它还被全球范围内的众多初创公司广泛采用。它的安装和启动非常迅速,非常适合原型设计,并且可以部署在许多流行的云平台上,如 AWS、Azure 和 GCP。

RabbitMQ 的网站是开始使用它的一个很好的地方。录制时的最新版本是 3.9.8,网站上还提供了关于如何参与社区、文档、支持和博客的详细信息。

RabbitMQ 的功能

说到功能,RabbitMQ 拥有大量功能,还可以通过一系列插件扩展,以支持各种不同的场景。它内置了一个管理 UI,在我们的课程中,我们将使用这个 UI 来理解 RabbitMQ 对我们的消息执行了什么操作。

RabbitMQ 教程 1

RabbitMQ 非常轻量,核心 RabbitMQ 平台运行所需的 RAM 不到 40MB。在管理 UI 中,我们可以看到 RabbitMQ 正在执行的所有操作的概览。我们可以监控连接、通道、交换、队列,这些都是我们将在后续文章中解释的内容。

我们还可以看到一些关于磁盘读取、磁盘写入的统计数据,以及有关哪些端口和用户正在使用我们的 RabbitMQ 环境的信息。

我们将从在多个平台上安装 RabbitMQ 的教程开始,然后看一下如何快速上手使用它的基本操作。我们还将简要介绍 RabbitMQ 如何使用 AMQP 作为其默认消息传递协议。

RabbitMQ 的客户端

正如前面提到的,这个系列的核心将着重于如何利用 RabbitMQ 的功能来解决分布式计算环境中经常遇到的核心架构问题。这些技术使我们能够轻松扩展部署在本地或云端的应用程序,并确保这些应用程序具有高可用性。

这些架构模式是技术领域最需要的技能之一,深入理解这些模式在各个行业中都具有很高的价值,无论技术栈如何。RabbitMQ 在许多流行的语言中都有客户端库。在这个系列中,我们将主要使用 Python 和 C#,但我们主要关注的是概念,我们所涵盖的内容在其他语言中也同样适用,如 Java、PHP、Ruby、Go 等。

为了结束本系列教程,我们将介绍一些 RabbitMQ 的高级功能,包括将 RabbitMQ 设置为节点集群,以及使 RabbitMQ 解决方案具有高可用性并甚至分布在云中的多个数据中心的技术。

希望本教程为你提供了关于 RabbitMQ 是什么以及我们将在本课程中涵盖哪些内容的良好介绍和概述。在下一篇文章中,我们将开始在本地机器上安装 RabbitMQ。

请记住,应用程序的架构取决于他的短板,所以请查看我的其他教程,了解更多你可以用来提升开发水平的热门技能。

正文完
 
评论(没有评论)
验证码