久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

SpringBoot整合Dubbo框架,實現RPC服務遠程調用

瀏覽:40日期:2023-03-07 18:46:30
目錄一、Dubbo框架簡介 1、框架依賴二、與SpringBoot2.0整合 1、核心依賴2、項目結構說明3、核心配置三、演示案例 1、服務遠程調用2、接口超時配置3、接口多版本配置四、源代碼地址 一、Dubbo框架簡介 1、框架依賴

SpringBoot整合Dubbo框架,實現RPC服務遠程調用

圖例說明:1)圖中小方塊 Protocol, Cluster, Proxy, Service, Container, Registry, Monitor 代表層或模塊,藍色的表示與業務有交互,綠色的表示只對 Dubbo 內部交互。2)圖中背景方塊 Consumer, Provider, Registry, Monitor 代表部署邏輯拓撲節點。3)圖中藍色虛線為初始化時調用,紅色虛線為運行時異步調用,紅色實線為運行時同步調用。4)圖中只包含 RPC 的層,不包含 Remoting 的層,Remoting 整體都隱含在 Protocol 中。

2、核心角色說明

1)Provider 暴露服務的服務提供方2)Consumer 調用遠程服務的服務消費方(負載均衡)3)Registry 服務注冊與發現的注冊中心(監控、心跳、踢出、重入)4)Monitor 服務消費者和提供者在內存中累計調用次數和調用時間,主動定時每分鐘發送一次統計數據到監控中心。5)Container 服務運行容器:遠程調用、序列化

二、與SpringBoot2.0整合 1、核心依賴

<!-- 這里包含了Zookeeper依賴和Dubbo依賴 --><dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-boot-starter</artifactId> <version>0.2.0</version></dependency>2、項目結構說明

SpringBoot整合Dubbo框架,實現RPC服務遠程調用

結構說明

dubbo-consume:服務消費方dubbo-provider:服務提供方dubbo-common:公共代碼塊,Dubbo接口,實體類3、核心配置

1)提供方配置

server: tomcat: uri-encoding: UTF-8 max-threads: 1000 min-spare-threads: 30 port: 7007 connection-timeout: 5000msspring: application: name: block-dubbo-provider# Dubbo 配置文件dubbo: application: name: block-dubbo-provider registry: address: 127.0.0.1:2181 protocol: zookeeper protocol: name: dubbo port: 20880 scan: base-packages: com.boot.consume

2) 消費方配置

server: tomcat: uri-encoding: UTF-8 max-threads: 1000 min-spare-threads: 30 port: 7008 connection-timeout: 5000msspring: application: name: block-dubbo-consume# Dubbo 配置文件dubbo: application: name: block-dubbo-consume registry: address: 127.0.0.1:2181 protocol: zookeeper三、演示案例 1、服務遠程調用

1)提供方服務接口

注意這里的注解 com.alibaba.dubbo.config.annotation.Service

@Service@Componentpublic class DubboServiceImpl implements DubboService { private static Logger LOGGER = LoggerFactory.getLogger(DubboServiceImpl.class) ; @Override public String getInfo(String param) {LOGGER.info('字符參數:{}',param);return '[Hello,Cicada]'; } @Override public UserEntity getUserInfo(UserEntity userEntity) {LOGGER.info('實體類參數:{}',userEntity);return userEntity; }}

2)消費方接口

注意這里注解 com.alibaba.dubbo.config.annotation.Reference org.springframework.stereotype.Service

@Servicepublic class ConsumeService implements DubboService { @Reference private DubboService dubboService ; @Override public String getInfo(String param) {return dubboService.getInfo(param); } @Override public UserEntity getUserInfo(UserEntity userEntity) {return dubboService.getUserInfo(userEntity); }}2、接口超時配置

該配置可以在服務提供方配置,也可以在服務消費方配置,這里演示在提供方的配置。注解:timeout

1)服務接口注解

@Service(timeout = 2000)@Componentpublic class DubboServiceImpl implements DubboService {}

2)消費方調用

@Override public String timeOut(Integer time) { return dubboService.timeOut(time); }

3)測試接口

服務超時拋出異常

com.alibaba.dubbo.remoting.TimeoutException3、接口多版本配置

1)服務提供方

相同接口提供兩個版本實現。注解:version。版本一:

@Service(version = '1.0.0')@Componentpublic class VersionOneImpl implements VersionService { @Override public String getVersion() {return '{當前版本:1.0.0}'; }}

版本二:

@Service(version = '2.0.0')@Componentpublic class VersionTwoImpl implements VersionService { @Override public String getVersion() {return '{當前版本:2.0.0}'; }}

2)消費方調用

通過@Reference(version)注解,將指向不同版本的接口實現。

@Servicepublic class VersionServiceImpl implements VersionService { @Reference(version = '1.0.0') private VersionService versionService1 ; @Reference(version = '2.0.0') private VersionService versionService2 ; @Override public String getVersion() {return versionService1.getVersion(); } public String version2 (){return versionService2.getVersion() ; }}

以上案例都是參照Dubbo官網的流程編寫的,Dubbo許多強大功能都可以參考官網一步步的配置。

四、源代碼地址

GitHub地址:知了一笑https://github.com/cicadasmile/middle-ware-parent

以上就是SpringBoot整合Dubbo框架,實現RPC服務遠程調用的詳細內容,更多關于SpringBoot整合Dubbo框架的資料請關注好吧啦網其它相關文章!

標簽: Spring
主站蜘蛛池模板: 精品国产欧美一区二区三区成人 | 91欧美在线| 精品久久网 | 国产一区二区三区四区在线观看 | 亚洲另类视频 | 奇米av在线 | 久热免费在线观看 | 久久免费黄色网址 | 狠狠插狠狠操 | 欧美一区二区在线 | 国产福利在线视频 | 精品一区二区三区在线视频 | 欧美亚洲国产一区 | 国产第一区在线观看 | 在线日韩欧美 | 国产精品永久免费自在线观看 | 一级毛片免费观看 | 狠狠干av| 国产 亚洲 网红 主播 | 亚洲一区二区三区在线观看免费 | 日韩中文一区二区三区 | 天天躁日日躁狠狠躁av麻豆 | 狠狠爱亚洲 | 久久亚洲一区二区三区四区 | 国产成年免费视频 | 日本黄色免费大片 | 欧美久草| 国产精品99精品久久免费 | 日韩毛片免费看 | 亚洲综合色网 | 亚洲无吗电影 | a级片在线观看 | 黄网免费 | 国产精品久久久久久久午夜片 | 久久久免费看 | 玖草av| 国产精品1区 | 人人操日日干 | 久久国产视频一区二区 | 久久国产一区 | 国产成人午夜高潮毛片 |