日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

最简单的Dubbo教程(springBoot纯注解版)

發布時間:2023/12/10 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最简单的Dubbo教程(springBoot纯注解版) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先介紹dubbo的理論

本文項目地址: [https://gitee.com/weizhiwei123/introduction-to-dubbo]

和springcloud netflix 不同, dubbo并沒有采用http協議作為服務方和消費方,而是另啟動一對socket連接允許dubbo協議進行消費方調用服務方,而這一切都是zookeeper在維護一個生產者-消費者列表。在生產者調用之前會先請求zookeeper的接口,才能知道自己該訪問誰。


那么代碼如何體現呢?
生產者的yml

dubbo:application:name: sea-provider-log #在zeekper的鍵中明確指定version: 1.0.0 #在zeekper的鍵中明確指定registry:protocol: zookeeperaddress: 127.0.0.1:2181 #服務注冊zookeeperprotocol: #消費者調用生產者時的協議name: dubbo #調用協議port: 20880 #生產者使用的socket端口host: 127.0.0.1 #生產者ipscan:base-packages: com.itheima server:port: 8090

消費者的yml

dubbo:application:name: sea-consumer-webregistry:protocol: zookeeperaddress: 127.0.0.1:2181protocol:name: dubboport: 20880host: 127.0.0.1scan:base-packages: com.itheimaconsumer:timeout: 5000check: false server:port: 8091

更多細節: 同接口需要不同的實現類,那么有每一個實現類有一個版本號,消費者可以指定版本號來決定自己調用哪一個熟悉類

package com.itheima;@javax.annotation.Generated(value = "by Dubbo generator",comments = "Source: DemoService.proto") public interface DemoService {public int hello(); } @Service(version="1") public class DemoServiceImp implements DemoService {@Overridepublic int hello() {return 100;} } @Controller public class ConsumCtroller {@Reference(version = "1")DemoService demoService;@RequestMapping("/")public ResponseEntity my(){int s = demoService.hello();return ResponseEntity.ok(s);} }

總結

以上是生活随笔為你收集整理的最简单的Dubbo教程(springBoot纯注解版)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。