午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

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

瀏覽:134日期: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
主站蜘蛛池模板: 久久av免费观看 | 九九天堂 | 日韩欧美一区二区三区在线观看 | 免费在线国产视频 | 亚洲欧美系列 | аⅴ资源新版在线天堂 | 日韩一区二区三区在线 | 国产一区二区影院 | 亚洲欧美乱综合图片区小说区 | 男人日女人免费视频 | 三级国产精品 | 黄页网站在线播放 | 国产一区不卡在线 | 久久精品视频播放 | 在线观看欧美日韩视频 | 亚洲一区二区在线免费 | 久久激情av | xxxxx国产 | 色天天综合 | 免费欧美一级 | 国产三级网站 | 先锋资源av在线 | 男人天堂网在线 | 欧美网站在线 | 欧美a∨亚洲欧美亚洲 | 久久久久久久91 | 99艹 | 人人爽爽人人 | 欧美影院一区 | 麻豆国产精品 | 国产麻豆一级片 | 97在线公开视频 | www.中文字幕.com | 精品久久久久久中文字幕 | 99热在线免费| 九色porny丨国产精品 | 国产精品性 | 亚洲欧美日韩天堂 | 久久日本视频 | 日韩欧美综合视频 | 国产精品色视频 |