利用 Kafka 设置可靠的高性能分布式消息传递基础架构.docxVIP

利用 Kafka 设置可靠的高性能分布式消息传递基础架构.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用 Kafka 设置牢靠的高功能分布式消息传递基础架构 Java EE Connector Architecture 可定义一组可扩展且格外平安的事务性机制。您可以将 JCA 资源适配器安装到兼容 Java EE 的任意应用程序服务器中,例如,IBM Websphere Application Server、IBM Business Process Manager、JBoss、WebSphere Liberty、Glassfish 或 Weblogic。 Java EE Connector Architecture 规范还供应了一组标准合约,用于支持企业应用程序与企业信息系统(如 Kafka)之间的通信。JCA 资源适配器可以插入到应用程序服务器,可通过处理全部系统级别的机制(事务、连接管理、崩溃恢复、错误跟踪和日志记录)来支持 Kafka 集成。JCA 资源适配器将对需要与之集成的企业应用程序隐蔽全部 Kafka 通信规律。通过实施 JCA 资源适配器,企业应用程序供应商可以集中精力实施业务和演示规律,而无需担忧与 Kafka 集成相关的低级别规律。因而,JCA 资源适配器只需开发一次,即可供各种应用程序复用。 让我们将它与网上商店领取场景联系起来,观看下图,它呈现了指定的处理方案系统上下文。 移动应用程序向 Kafka发送领取恳求数据, 该Kafka 已通过资源适配器与企业领取应用程序进行了集成。此外,还可以使用此适配器向 Kafka 推送领取通知。此适配器会启动 XA 事务,该事务将传递到企业领取应用程序和通知系统。因而,与领取恳求处理相关的全部任务都将在同一个全局事务内运转,并且同时完成或者同时失败。除了从中读取数据或向其中写入数据的主题外,该设计还在 Kafka 上设置了重试、死信和事务日志主题。 现在,我们来更具体地探究与移动应用程序往来的消息的处理过程。 传入流 在我们的领取场景中,传入流表示由网上商店移动应用程序发起的通信,该应用程序会向 Kafka 发送领取恳求数据。资源适配器供应了 Kafka 连接,并向应用程序服务器上存在的消息端点异步传递消息。可使用 JCA 规范所定义的消息传入流合约来实现这一点。 Kafka JCA 资源适配器会实施激活规范 JavaBean,其中包含一组用于端点激活配置的配置属性。这些配置具体信息将作为应用程序服务器配置的一部分来进行定义。 资源适配器会定期从传入 Kafka 主题轮询一批领取恳求。成功完成数据轮询后,它会迭代数据批次,并异步向端点实例传递消息。每个消息端点可能存在多个端点实例,因而能够并行使用消息并供应高吞吐量。 Kafka 使用者偏移在支配消息送达后马上落实,从而避开了批次受阻的问题。这种设计是可行的,由于该资源适配器通过需要在 Kafka 上设置的重试、死信和事务日志主题来实施毛病转移过程。在我们的例子中,端点需要支持 XA 事务,并且需要在向端点发送数据之前创建事务上下文,从而供应原子消息使用。 假如应用程序服务器特别终止了事务,那么由端点实例执行的全部工作都应回滚,并且消息应转发到 Kafka 重试主题。 适配器使用来自 Kafka 重试主题的消息,并对其进行重新处理。超出已配置的消息处理重试次数后,该适配器会将此消息传递到 Kafka 死信主题。发送到死信主题的消息包含有价值的业务数据,因而监视该主题至关重要。 传出流 传出流表示由企业应用程序发起的 Kafka 通信。在我们的例子中,这是用于向移动应用程序发送领取确认的通知系统。JCA 规范定义了一个连接管理合约,可让应用程序服务器合并 Kafka 连接,从而供应支持大量客户端的可扩展环境。 Kafka 传出连接配置具体信息是使用 Managed Connection Factory JavaBean 进行定义的。利用这些配置具体信息,管理员和开发者可使用适配器来配置 Kafka 生产者,并打算所需的功能,例如,牢靠性、可用性、吞吐量、延迟和事务支持。这些配置具体信息将作为应用程序服务器配置的一部分来进行定义。 Kafka JCA 资源适配器将公开用于实施公共客户端接口 (CCI) 和 Java 消息服务 (JMS) 接口的 Kafka Connection Factory 和 Kafka Connection。应用程序组件会使用 Java 命名和名目接口 (JNDI) 名称来查找连接工厂。成功猎取连接工厂后,应用程序会使用它来猎取连接,以便访问 Kafka。这样,您就可以为通知系统应用程序无缝添加 Kafka 集成,该应用程序当前将数据发送到 JMS 消息传递供应程序(如 IBM MQ 或 Active MQ)。 资源适配器传出流会封装低级别的 Kafka 通信规律,并供应: 连接合并 使用 Kaf

文档评论(0)

bob157641554 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档