2015-04-01 42 views
2

目前我們有一些單一的Web應用程序,並嘗試將項目轉移到微服務基礎架構。RESTful微服務故障轉移和負載平衡

對於單片應用程序是HAProxy和會話複製具有故障轉移和負載平衡。

現在我們用spring引導來構建一些RESTful微服務,但是我不清楚構建生產環境的最佳方式。 當然,我們可以將所有應用程序作爲unix服務運行,並且仍然具有用於負載平衡和故障轉移的反向代理。這個解決方案對我來說似乎很重,並且有很多配置和維護。資源管理和放大或縮小服務器將始終是一個手動過程。

使用2-3臺服務器和簡單的資源管理來設置生產環境的最佳可能性是什麼? 還有一些解決方案還支持連續部署嗎?

回答

3

我建議尋找服務發現。 Netflix descibes此爲:

服務發現系統提供了一種機制:

  • 服務登記他們的可用性
  • 定位一個特定服務的單個實例
  • 通知時的實例服務變更

Netflix的尤里卡等軟件包可能會有所幫助。 (編輯 - 實際上這看起來像它可能是AWS特定的)

這應該適用於連續交付,因爲服務可以讓自己不可用,被更新,然後再次註冊可用性。

+0

http://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html我還沒有使用它,但有一個關於在Cloudfoundry上使用Eureka的部分,所以有可能它可能會也在AWS之外工作 – sodik 2015-04-01 11:05:45

+0

據我瞭解,策展人項目幫助我發現可用的服務。是否還有自動管理服務器的解決方案? 如果在服務器上線服務將在那裏啓動,如果在服務器上下線,服務將在另一個上啓動? Cloudfoundry對我有點困惑:( – Matthias 2015-04-01 15:17:03

相關問題