Kafka 集群

我们已经研究过在一个 Kafka 集群中可以有多个分区、主题和代理。

因此,用随着 Apache Kafka 部署的增长,拥有多个集群是有益的。在本节中,我们将讨论多集群及其优势等。

Kafka 集群是一个集群,它由多个代理和各自的分区组成。多个 Kafka 集群意味着连接两个或多个集群以简化生产者和消费者的工作。

多个集群的优势

单个 Kafka 集群足以满足本地需求事态发展。但是,拥有多个集群是有益的。有几个原因最能说明多集群的优势:

  • 数据类型隔离
  • 多个数据中心
  • 隔离安全要求

数据类型隔离

使用多个集群允许用户将不同类型的数据隔离在不同的代理下。这使得获取数据变得容易。此外,用户不需要过滤单个集群中的数据。

多个数据中心

构建多个数据中心的目的是从灾难中拯救我们的数据或消息。因此,这些数据中心需要在它们之间复制数据。如果发生任何灾难,例如系统崩溃或服务器崩溃,数据仍然可以恢复。此外,在线应用程序可以轻松访问用户在两个站点上的活动。

安全要求的隔离

安全是主要关注任何数据或消息。 Apache Kafka 为存储的数据提供了各种安全措施。由于多个数据中心分别存储海量数据,安全需求也被隔离在不同的数据中心。

MirrorMaker

在Apache Kafka中,复制过程只在内部进行集群,而不是多个集群之间。因此,Kafka 项目引入了一种称为 MirrorMaker 的工具。 MirrorMaker 是消费者和生产者的组合。它们都通过队列链接在一​​起。来自一个 Kafka 集群的生产者生成一条消息,来自另一个集群的消费者读取该消息。

Apache Kafka Multiple Clusters

在上图中,来自两个本地数据中心的消息通过MirrorMaker聚合到一个集群中。然后将各自的集群复制到其他数据中心。

因此,为了管理大量数据和消息,MirrorMaker 用于在各个 Kafka 集群之间复制数据。

下一章:Kafka 架构

我们已经学习了 Apache Kafka 的基本概念。这些基本概念,如Topic、分区、生产者、消费者等,共同构成了Kafka架构。由于不同的应用程序相应地设计了Kafka的架构,因此设计Apache需要以下几个基本部分K ...