产品架构

<p class="shortdesc"></p> <section class="section" id="architecture__section_qht_mhx_1mb"><h2 class="doc-tairway">Kafka 应用架构</h2> <div class="p"> <img class="image" id="architecture__image_fkt_shx_1mb" src="https://obs-cn-shanghai.yun.pingan.com/pcp-portal/20201010105420-1a18d2ed939f.png"> <ul class="ul" id="architecture__ul_y2d_vhx_1mb"> <li class="li"><strong class="ph b">Producer</strong>:通过 push 模式向消息队列 Broker 发送消息,可以是网站的页面访问、服务器日志等。</li> </ul> <ul class="ul" id="architecture__ul_b4k_whx_1mb"> <li class="li"><strong class="ph b">Kafka Broker</strong>:消息队列 Kafka 的服务器,用来存储消息。支持横向扩展,一般 Broker 节点数量越多,集群吞吐率越高。</li> <li class="li"><strong class="ph b">Consumer Group</strong>:通过 pull 模式从消息队列 Kafka Broker 订阅并消费消息。</li> <li class="li"><strong class="ph b">Zookeeper</strong>:管理集群的配置、选举 leader,以及在 Consumer Group 发生变化时进行负载均衡。</li> </ul> </div> </section> <section class="section" id="architecture__section_vfg_d3x_1mb"><h2 class="doc-tairway">Kafka 发布订阅关系图</h2> <div class="p"> <img class="image" id="architecture__image_yyz_23x_1mb" src="https://obs-cn-shanghai.yun.pingan.com/pcp-portal/20201010105420-1ce65aa59b0a.png"> </div> <p class="p">消息队列 Kafka 采用 Pub/Sub(发布/订阅)模型,其中:</p> <ul class="ul" id="architecture__ul_plt_g3x_1mb"> <li class="li">Consumer Group 和 Topic 的关系是 N:N。 同一个 Consumer Group 可以订阅多个 Topic,同一个 Topic 也可以同时被多个 Consumer Group 订阅。</li> <li class="li">同一 Topic 的一条消息只能被同一个 Consumer Group 内的任意一个 Consumer 消费,但多个 Consumer Group 可同时消费这一消息。</li> </ul> </section> <section class="section" id="architecture__section_b24_j3x_1mb"><h2 class="doc-tairway">Kafka 部署架构</h2> <div class="p"> <img class="image" id="architecture__image_ujd_l3x_1mb" src="https://obs-cn-shanghai.yun.pingan.com/pcp-portal/20201010105420-129bdb609f36.png"> </div> <ul class="ul" id="architecture__ul_alk_m3x_1mb"> <li class="li"><strong class="ph b">Kafka管理平台</strong>:标准J2EE应用,采用Tomcat部署,数据库使用PostgreSQL。</li> <li class="li"><strong class="ph b">Kafka Broker</strong>:Zookeeper和Broker节点数量可按需部署, Broker集群采用主从模式,消息至少两份落盘,建议不同节点跨可用区部署,且使用同一关联组。</li> <li class="li"><strong class="ph b">客户端SDK支持多语言</strong>:支持JAVA、C语言等,客户端通过TCP访问到Broker。</li> </ul> </section>
以上内容是否解决了您的问题?
请补全提交信息!
咨询·建议

电话咨询 - 7x24 小时

400-151-8800

邮件咨询

cloud@pingan.com

在线客服

7x24 小时,急速解答

工单支持

解决云产品相关技术问题