1 回答

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
使用Spring Cloud構(gòu)建實(shí)際的微服務(wù)架構(gòu)。
基本概念:
使用Docker進(jìn)行集成測(cè)試
混合持久化
微服務(wù)架構(gòu)
服務(wù)發(fā)現(xiàn)
API網(wǎng)關(guān)
Docker
使用Docker對(duì)每一個(gè)服務(wù)進(jìn)行構(gòu)建和部署。使用Docker Compose在一個(gè)開發(fā)機(jī)上進(jìn)行端到端的集成測(cè)試。
混合持久化
混合持久化其實(shí)就是說使用多種數(shù)據(jù)庫來存儲(chǔ)。不同的微服務(wù)實(shí)例都會(huì)使用它們自己的數(shù)據(jù)庫,并通過REST服務(wù)或者消息總線來通信,舉個(gè)例子,你可以使用基于以下數(shù)據(jù)庫來構(gòu)建微服務(wù):
Neo4j(圖形化)
MongoDB(文檔化)
MySQL(關(guān)聯(lián))
微服務(wù)架構(gòu)
這個(gè)例子演示了如何使用微服務(wù)創(chuàng)建一個(gè)新的應(yīng)用。由于在項(xiàng)目中的每一個(gè)微服務(wù)只有一個(gè)單一的父項(xiàng)目。開發(fā)者為此得到的收益是可以在本機(jī)上運(yùn)行和開發(fā)每一個(gè)微服務(wù)。添加一個(gè)新的微服務(wù)非常簡(jiǎn)單,當(dāng)發(fā)現(xiàn)微服務(wù)時(shí)將會(huì)自動(dòng)發(fā)現(xiàn)運(yùn)行時(shí)的集群環(huán)境上。
Service Discovery
項(xiàng)目中包含兩個(gè)發(fā)現(xiàn)服務(wù),一個(gè)在Netflix Eureka,另一個(gè)使用了
Consul from Hashicorp。多種發(fā)現(xiàn)服務(wù)提供了多種選擇,一個(gè)是使用(Consul)來做DNS服務(wù)集群,另一個(gè)是(Consul)基于代理的API 網(wǎng)關(guān)。
API 網(wǎng)關(guān)
每一個(gè)微服務(wù)都關(guān)聯(lián)Eureka,在整個(gè)集群中檢索API路由。使用這個(gè)策略,每一個(gè)在集群上運(yùn)行的微服務(wù)只需要通過一個(gè)共同的API網(wǎng)關(guān)進(jìn)行負(fù)載均衡和暴露接口,每一個(gè)服務(wù)也會(huì)自動(dòng)發(fā)現(xiàn)并將路由請(qǐng)求轉(zhuǎn)發(fā)到自己的路由服務(wù)中。這個(gè)代理技術(shù)有助于開發(fā)用戶界面,作為平臺(tái)完整的 API通過自己的主機(jī)映射為代理服務(wù)。
Docker 實(shí)例
下面的實(shí)例將會(huì)通過Maven來構(gòu)建,使用Docker為每一個(gè)微服務(wù)構(gòu)建容器鏡像。我們可以很優(yōu)雅的使用Docker Compose在我們自己的主機(jī)上搭建全部的微服務(wù)集群。
- 1 回答
- 0 關(guān)注
- 1331 瀏覽
添加回答
舉報(bào)