Kafka设置可靠的高性能分布式消息传递基础架构
|
Kafka 已成为构建基于事件的高度可扩展系统的首选解决方案。Kafka 可为事件流平台提供快速升级换代的功能,以供开发者在现代化业务解决方案中使用。然而,开发者通常需要将现有 Java EE 业务解决方案(基于 IBM MQ 或 IBM WebSphere Application Platform 之类的技术而构建的)集成到这些新的事件流架构中。 考虑以下示例: 某个网上商店拥有一个移动应用程序,该应用程序使用 Kafka 向企业 Java 中实施的分布式支付系统发送支付请求数据。该解决方案必须绝对保证一次性完成支付请求的处理(避免多次向买家收费)。但是,在分布式系统中,故障是不可避免的,因此该解决方案需要采用稳妥的方式来处理故障。 使用 Apache Kafka 实施消息传递 Apache Kafka 是一种用于事件流处理的分布式系统,广泛应用于微服务架构和基于云的环境中。它在同一个平台内提供事件的消息传递、存储和处理。
下图展示了 Apache Kafka 组件的基本拓扑,其中包括通过 Kafka 集群基础架构交换消息的生产者和使用者。
要解决 Kafka 集成问题,您可以应用传统消息传递拓扑概念,例如,事务日志、恢复日志和 XA 事务。 您可以实施基于 Java EE Connector Architecture (JCA) 的资源适配器。利用此 JCA 资源适配器,您可以为应用程序服务器提供 ACID 功能,以便进行 Kafka 消息处理。此 JCA 资源适配器随后可提供与企业 Java 应用程序的无缝 Kafka 集成。 实施 JCA 资源适配器 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 资源适配器将对需要与之集成的企业应用程序隐藏所有 K (编辑:平顶山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

