簡體   English   中英

卡夫卡+風暴拓撲與微服務

[英]kafka + storm topology vs microservices

當人們可以使用直接連接到kafka的微服務時,使用風暴拓撲有什么好處。 微服務方法似乎為以下方面提供了更好的解決方案:

  • 工具(每個可能的庫,IoC容器等)
  • 持續部署(現有工具和最佳實踐)

而Storm拓撲似乎使用需要靜態功能的普通Java。

那么使用風暴拓撲代替微服務有什么好處?

這與單片設計與微內核設計的論點非常相似。 在單片內核中,只有一個地址空間。 Storm就是這樣-您必須使用其特定的API才能在Storm中使用服務。 如果您使用Java或受支持的API,那么您很幸運。 同樣,這就像一個內核庫-您查看內核為您提供的API,然后使用它。

使用微內核,所有內核所做的就是傳遞消息。 這就像卡夫卡。 這只是一個消息傳遞體系結構。 只要任何進程都可以發送適當結構化的消息,便可以參與集群。

就像單核與微內核一樣,它歸結為您的設計目標和個人理念之間的相互作用。 我的觀點是,您可以通過微服務構建類似於Storm的體系結構,但是比開箱即用Storm需要更多的工作。 一個相關的論點是您無法通過Storm構建微服務架構。

可伸縮性和彈性-使用微服務架構,您將必須提供自己的模式以實現可伸縮的彈性架構。 您說可以用“更多的工作”自己構建它們,這是正確的,但是分布式系統很難,所以最終您有時間和資源嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM