kafka 是不是适合小型微服务环境,或者我应该寻找轻量级的替代方案

Posted

技术标签:

【中文标题】kafka 是不是适合小型微服务环境,或者我应该寻找轻量级的替代方案【英文标题】:Is kafka a good fit for a small scale microservices environment, or should I look for lightweight alternativeskafka 是否适合小型微服务环境,或者我应该寻找轻量级的替代方案 【发布时间】:2015-06-29 11:47:09 【问题描述】:

我正在开发一系列将部署为微服务的应用程序。每个人都有一个单独的数据库,我希望通过像 Apache Kafka 这样的单一统一事件存储/日志来协调数据。我已经开始尝试使用 Kafka,大多数用户似乎都在使用具有集群和相当复杂的容错设置的相当大规模的 kafka。我们最初预计不会有特别大的容量,所以我想知道 Kafka 是否是正确的选择?这是否适合 kafka,或者鉴于我们目前的规模,我应该寻找更轻量级的替代品。

【问题讨论】:

【参考方案1】:

如果您正在尝试使用 Kafka,那么我假设您想使用发布/订阅消息传递工具。您可能想看看MQ Light 作为另一种可能性。它可用于微服务架构中组件之间的 Pub/Sub 消息传递。如果您稍后需要增加数量并需要添加更多实例,它也可以部署在 Bluemix 云中。

【讨论】:

【参考方案2】:

我认为您对使用消息总线架构的描述听起来是个好主意。 Kafka 是一种可能的解决方案,还有其他一些解决方案。我认为,比你使用哪种消息总线更重要的是沿着这条路线走的架构决策。可以通过查找每种消息的优缺点来选择正确的消息传递总线。

【讨论】:

以上是关于kafka 是不是适合小型微服务环境,或者我应该寻找轻量级的替代方案的主要内容,如果未能解决你的问题,请参考以下文章

详解微服务:Spring Cloud原理及核心

1 微信号的种类和特点

分享一个C++与Python开发的中小型通用游戏服务端框架(跨平台,开源,适合MMORPG游戏)

springboot整合~swagger~kafka~nginx~redis~mysql(在linux服务器环境下部署运行测试)

我们是不是需要单独的环境进行测试和验收(暂存)

Kafka Streams 是不是适合触发记录的批处理?