1. 程式人生 > 其它 >微服務與 dubbo

微服務與 dubbo

官方網址

https://dubbo.apache.org/zh

Apache Dubbo 提供了六大核心能力:

1,面向介面代理的高效能RPC呼叫,
2,智慧容錯和負載均衡,
3,服務自動註冊和發現,
4,高度可擴充套件能力,
5,執行期流量排程,
6,視覺化的服務治理與運維。

生產者示例:

安裝jdk

[root@mq-node1 ~]# apt install openjdk-8-jdk -y

建立目錄

[root@mq-node1 ~]# mkdir /apps -p

解壓

[root@mq-node1 ~]# tar xf dubbo-demo-provider-2.1.5-assembly.tar.gz -C /apps/

做個軟連結

[root@mq-node1 ~]# ln -s /apps/dubbo-demo-provider-2.1.5 /apps/dubbo-demo-provider

修改配置

[root@mq-node1 ~]# vim /apps/dubbo-demo-provider/conf/dubbo.properties

#dubbo.registry.address=multicast://224.5.6.7:1234
# zookeeper叢集
dubbo.registry.address=zookeeper://172.31.2.41:2181 | zookeeper://172.31.2.42:2181 | zookeeper://172.31.2.43:2181

啟動

[root@mq-node1 ~]# /apps/dubbo-demo-provider/bin/start.sh

Starting the demo-provider ....OK!
PID: 9304
STDOUT: logs/stdout.log

檢視埠20880

[root@mq-node1 ~]# ss -tanl
LISTEN               0                     50                                          0.0.0.0:20880                                    0.0.0.0:*

消費者示例:

部署 consumer:

安裝jdk

[root@mq-node2 ~]# apt install openjdk-8-jdk -y

建立目錄

[root@mq-node2 ~]# mkdir -p /apps

解壓

[root@mq-node2 ~]# tar xf dubbo-demo-consumer-2.1.5-assembly.tar.gz -C /apps/

修改配置

[root@mq-node2 ~]# vim /apps/dubbo-demo-consumer-2.1.5/conf/dubbo.properties

#dubbo.registry.address=multicast://224.5.6.7:1234
# zookeeper叢集
dubbo.registry.address=zookeeper://172.31.2.41:2181 | zookeeper://172.31.2.42:2181 | zookeeper://172.31.2.43:2181

啟動

[root@mq-node2 ~]# /apps/dubbo-demo-consumer-2.1.5/bin/start.sh

Starting the demo-consumer ....OK!
PID: 8705
STDOUT: logs/stdout.log

驗證 consumer 日誌:

[root@mq-node2 ~]# tail -f /apps/dubbo-demo-consumer-2.1.5/logs/stdout.log
[07:34:46] Hello world28, response form provider: 172.31.2.44:20880
[07:34:48] Hello world29, response form provider: 172.31.2.44:20880
[07:34:50] Hello world30, response form provider: 172.31.2.44:20880
[07:34:52] Hello world31, response form provider: 172.31.2.44:20880
[07:34:54] Hello world32, response form provider: 172.31.2.44:20880

驗證 provider 日誌:

consumer會開啟隨機埠呼叫,預設每隔2s一次

[root@mq-node1 ~]# tail -f /apps/dubbo-demo-provider/logs/stdout.log
[07:35:36] Hello world53, request from consumer: /172.31.2.45:53836
[07:35:38] Hello world54, request from consumer: /172.31.2.45:53836
[07:35:40] Hello world55, request from consumer: /172.31.2.45:53836
[07:35:42] Hello world56, request from consumer: /172.31.2.45:53836

dubbo admin

解壓tomcat

[root@mq1 ~]# tar xf apache-tomcat-8.5.54.tar.gz -C /apps

解壓

[root@mq1 webapps]# unzip dubboadmin.war

修改配置

[root@mq1 webapps]# vim dubboadmin/WEB-INF/dubbo.properties

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

因為kafka佔用8080,修改Tomcat預設埠

[root@mq1 webapps]# vim /apps/apache-tomcat-8.5.54/conf/server.xml

<Connector port="8090" protocol="HTTP/1.1"

啟動Tomcat

[root@mq1 webapps]# /apps/apache-tomcat-8.5.54/bin/catalina.sh start

檢視埠


瀏覽器登入:http:ip:8090/dubboadmin

賬戶密碼都是:root