Spring Boot微服務電商項目開發實戰 --- 多環境部署配置、端口號統一配置及Dubbo提供者消費者實現


昨天已經搭建好了SpringBoot基於Maven的基礎父子級項目,今天開始進入項目分模塊及分布式實現。首先我們基於昨天的項目,在父級工程下建lyn-sys,lyn-customer,lyn-goods,lyn-order四個西模塊。

這四個模塊將作為Dubbo服務的提供者,里面主要寫對應模塊的Service接口及實現及Mapper等。把這四個模塊作為提供者,那可能大家得問了,消費者是誰呢?這里的消費者就是昨天寫的接口服務lyn-web。

 

現在,我們以商品服務模塊lyn-goods為例創建並實現提供者。

右擊“lyn-goods”,選擇“New”>>>"Module",進入下面的頁面

點擊“Next”

先建一個api依賴的模塊goods-api,然后點擊“Next”

點擊“Finish”。再以相同的方式創建goods-service模塊。創建完成如下:

以上面相同的方式為lyn-sys,lyn-customer,lyn-order三個模塊創建服務接口***-api和服務實現***-service。

二,分環境部署及端口號統一配置

新建一個lyn-commom模塊作為放公共資源,並在resoures下添加application.properties。如下圖:

spring.profiles.active 是配置的SpringBoot的分環境部署;

lyn.***.port 這幾個配置是幾個要啟動的服務的端口號;

統一配置需要在對應模塊的resources下創建application-dev.properties和application-pro.properties,並在這兩個配置里添加service.port=${lyn.***.port},然后讓此模塊依賴lyn-common即可。當服務啟動時,首先會找到lyn-common下的application.properties文件,並讀取里面的屬性,再根據讀到的spring.profiles.active值去匹配加載對應本模塊下的application-***.properties。並將讀到的lyn.***.port值賦值給本模塊service.port屬性。具體模塊下的配置以lyn-customer為例。

三,Dubbo提供者及消費者配置

1,提供者配置及實現

先在四個提供者模塊里的***-service下的pom里配置Dubbo依賴,並依賴自己模塊里的***-api。如圖下(其他幾個模塊依賴相似)

添加提供者配置信息。需要注意點:dubbo.applicaiton.name可以以模塊命名,dubbo.protocol.port從20880遞增,每個提供者的這個值不可重復。

然后在這四個提供者的業務接口***-api里寫service接口服務。並且每個模塊下的***Service里都寫一個相同的方法:test(String name)。

然后在對應的每個模塊的***-service里寫service接口的實現。

再寫四個提供者的啟動類(其他模塊的一樣,都在***-service下),注意一定要有@EnableDubbo注解,用來開啟Dubbo服務。

2,消費者配置及實現

在消費服務lyn-web下的pom里添加Dubbo依賴及提供者的Service接口依賴。

添加消費者配置

編寫消費者啟動類:

編寫測試Controller接口

四,測試

 啟動四個提供者和消費者服務,然后根據Controller下的接口進行測試。

打開瀏覽器訪問接口(四個接口各自對應不同的提供者為其提供服務)

總結:本期主要講解了基於SpringBoot實現分布式微服務下的統一配置、分環境部署配置。以及服務端模塊的分離(每一個提供者就是一個獨立的微服務)、微服務落地、Dubbo提供者及消費者的配置實現。

獲取項目源代碼,請掃碼關注公眾號,並發送Springboot獲取。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM