2017-04-12 89 views
-1

您能否讓我知道或分享一些鏈接來決定是否將我的應用程序移動到微服務架構?移動或不移動到微服務

場景:我有一個應用程序是面向互聯網但具有有限的用戶數量,即不會突然傳入流量。而 此應用程序不存儲任何關鍵應用程序 數據依賴於其他應用程序,並通過其餘應用程序的數據通過其他服務或直接數據庫調用消耗其他應用程序的 數據。此外,爲了降低成本,我們希望將此應用程序遷移到AWS。

你可以讓我知道是否要移動它的微服務嗎?

如果我們應該決定轉向微服務,那麼策略應該是什麼?

+1

關於轉向微服務還有很多要說的,但無論如何你應該知道微服務與龐然大物的優缺點。請閱讀https://www.oreilly.com/ideas/modules-vs-microservices或https://www.nginx.com/wp-content/uploads/2015/01/Building_Microservices_Nginx.pdf或http:// cloudacademy。 COM /博客/微服務架構的挑戰,優勢,缺點/ –

回答

-1

你可以讓我知道是否要移動它的微服務嗎?

很難說對你的應用程序和你的組織很少了解。如果您回答以下問題,我們可以給出更好的答案:

  • 您的代碼庫有多大?

  • 今天有多少人在工作呢?

  • 未來會有多少人蔘與其中?

  • 系統有多少用戶?

  • 由於開發/構建/部署組件的依賴性,是否有很多開發時間丟失?
  • 應用程序的可伸縮性和高可用性有多重要?

但是,從您的描述來看,這聽起來不像是一筆很好的投資。一般來說,微服務架構將幫助大型應用程序變得更易維護和可擴展。如果你的應用程序不是很大,或者沒有擴展或維護的問題,那麼我就不會投資。但是,如果您希望將來擴展應用程序,我會建議將這些新服務作爲微服務來開發,並逐漸遠離龐然大物。

如果我們應該決定轉向微服務,那麼策略應該是什麼?

我們無法在一個計算器問題中回答這個問題。這需要深入分析您的應用程序和可以區分的不同服務(出於商業目的)。對於每項服務,您必須確定如何減少與其他部分的耦合,併爲這些交互定義API,甚至通過分離服務的數據基礎來破壞關係。您還將查看實施技術,並根據具體情況決定哪一種最適合每種服務。您還將查看底層基礎架構並決定可自動執行的選項(例如kubernetes)。請參閱this