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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Spring + Dubbo + zookeeper (linux) 框架搭建

發布時間:2023/12/19 linux 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring + Dubbo + zookeeper (linux) 框架搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

dubbo簡介

節點角色說明:

Provider:?暴露服務的服務提供方。

Consumer:?調用遠程服務的服務消費方。

Registry:?服務注冊與發現的注冊中心。

Monitor:?統計服務的調用次調和調用時間的監控中心。

Container:?服務運行容器。


調用關系說明:

0.?服務容器負責啟動,加載,運行服務提供者。

1.?服務提供者在啟動時,向注冊中心注冊自己提供的服務。

2.?服務消費者在啟動時,向注冊中心訂閱自己所需的服務。

3.?注冊中心返回服務提供者地址列表給消費者,如果有變更,注冊中心將基于長連接推送變更數據給消費者。

4.?服務消費者,從提供者地址列表中,基于軟負載均衡算法,選一臺提供者進行調用,如果調用失敗,再選另一臺調用。

5.?服務消費者和提供者,在內存中累計調用次數和調用時間,定時每分鐘發送一次統計數據到監控中心。



四個步驟

1 搭建zookeeper消息中心

2 搭建dubbo服務端代碼

3 寫dubbo客戶端代碼

4 dubbo提供的dubbo-admin-2.5.4.war 管理控制臺

一: 搭建zookeeper 消息中心


1 下載zookeeper安裝文件

????zookeeper-3.3.6.tar.gz

2 ?執行命令?tar?zxvf?zookeeper-3.4.6.tar.gz 解壓,
3 到 zookeeper-3.3.6/conf 目錄下

把zoo_sample.cfg 復制一份為zoo.cfg,作為默認配置文件



4 配置說明

tickTime:這個時間是作為 Zookeeper 服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是每個 tickTime 時間就會發送一個心跳。
dataDir
:顧名思義就是 Zookeeper 保存數據的目錄,默認情況下,Zookeeper 將寫數據的日志文件也保存在這個目錄里。
clientPort
:這個端口就是客戶端連接 Zookeeper 服務器的端口,Zookeeper 會監聽這個端口,接受客戶端的訪問請求。

我的配置: 端口2181是默認配置


5 在zookper-3.3.6/bin目錄下執行

./zkServer.sh start 啟動zookeeper


6 驗證zookeeper是否啟動

使用netstat -lpn | grep 2181?

如果有端口號, 說明已經啟動

ps: 因為我linux 是裝在虛擬機里面, zookeer在虛擬機里, ?DubboServer , DubboClient , DubboAdmin 都是在windows上, 注意要開放linux的2181端口


二 DubboServer 工程


DubboServer段是一個web工程,服務提供者, 我這里是dubbo和spring結合搭建.

spring的搭建過程,可參見 ?springmvc + mybatis配置

我這里僅是搭建spring和dubbo的例子,使用的最少的配置


1 測試代碼編寫



2 dubbo的xml文件配置
<?xml?version="1.0"?encoding="UTF-8"?> <beans?xmlns="http://www.springframework.org/schema/beans"?xmlns:p="http://www.springframework.org/schema/p" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"??xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd???? http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> <dubbo:application?name="wt-dubbo-server"??/> <!--?消息中心地址?--> <dubbo:registry?address="zookeeper://192.168.20.129:2181"?check="false"/> <dubbo:protocol?name="dubbo"?port="20880"?serialization="hessian2"?/> <!--?聲明接口?--> <dubbo:service?interface="com.DubboServer"?ref="dubboServer"?/> </beans>

3 導出接口層的jar

把server層的代碼導出jar, 后面放到dubboClient中!!


然后啟動項目


三 DubboClient工程

dubboClient可以是web工程也可以是普通的javaproject.

我也是用的spring集成,但是使用的是junit進行測試,?


1 dubboclient端代碼


2 dubbo的xml配置
<?xml?version="1.0"?encoding="UTF-8"?> <beans?xmlns="http://www.springframework.org/schema/beans"?xmlns:p="http://www.springframework.org/schema/p" xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"??xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd???? http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> <dubbo:application?name="dys-client"??/> <!--?消息中心地址?--> <dubbo:registry?address="zookeeper://192.168.20.129:2181"?check="false"/> <!--?聲明接口?--> <dubbo:reference?id="dubboServer"?interface="com.DubboServer"?/> </beans>


3 測試運行client端代碼(zookeeper 和 dubboServer端已經啟動)

運行成功!


四 dubbo-admin-2.5.4.war 管理控制臺

把這個war包放到tomcat的webapps目錄下?

1 修改tomcat的端口號不要和其他服務沖突.

2 修改 WEB-INF 下的dubbo.properties文件

dubbo.registry.address=zookeeper://192.168.20.129:2181 dubbo.admin.root.password=root dubbo.admin.guest.password=guest


3 啟動tomcat,訪問.

點擊 服務治理--提供者 可看到如下, ? ?還有一些其他的信息,再查閱吧,暫時我也不是很清楚


轉載于:https://my.oschina.net/wangt10/blog/522799

總結

以上是生活随笔為你收集整理的Spring + Dubbo + zookeeper (linux) 框架搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

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