原文連接架構
遷移到微服務聽起來彷佛是一項巨大而複雜的任務。雖然過程可能稍顯複雜,但實際上比你想象的更爲簡單。這篇博客以一個標準的J2EE應用程序爲例創建了一個基礎遷移路線圖,從一體化架構遷移到微服務架構。咱們將從容器化咱們的Java應用程序開始逐步實現最終自動發佈到Kubernetes微服務環境。負載均衡
咱們的遷移之旅首先從容器化Java應用程序(.jar,.war或.ear)開始,這涉及到創建一個容器容納Java運行時及你的應用程序。實現該步驟的時候,記住如下幾點:dom
一開始遷移到微服務,你須要爲你的Kubernetes環境提供一個負載均衡器,處理來自雲負載均衡器的外部請求。NGINX是一個好的選擇,花點時間安裝並學習NGINX。微服務
在熟悉了NGINX後,將它移到容器中。學習
如今,有趣的地方來了。若是不使用Kubernetes管理你的容器,你遷移到微服務的努力將付諸東流。經過創建第一個Kubernetes集羣來學習Kubernetes。從Google和他們的優惠開始。這個嚮導會教你如何創建你的集羣。你須要安裝一個Google Command Line Client。固然,也要學習Helm。this
在Kubernetes集羣創建以後,是時候考慮一下如何拆分你的應用程序了。DeployHub支持領域驅動設計(DDD)模式來組織,編目,發佈以及分享微服務。設計
在開發的早期就定義好你的領域結構相當重要。在一開始就組織好微服務並重用組件能防止以後混亂的發生。3d
在一個倉庫中管理你的二進制文件,有助於爲容器進行構建。每一次構建都會對應於一個版本號並有一個可追溯的歷史。cdn
理由同上。blog
使用DeployHub Team自動部署。DeployHub會追蹤你的配置以及版本。
這幾乎就是所有內容。不要吧遷移到微服務想的過於複雜。花一點時間來完成每個步驟。在你的CI/CD工做流中會有一些小的改動,可是這些都是可行的。從這個簡單的例子中,你能夠逐步創建你本身的微服務,並開啓了邁向現代化架構的旅程。