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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【SSM分布式架构电商项目-32】Dubbo入门

發(fā)布時(shí)間:2024/8/1 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【SSM分布式架构电商项目-32】Dubbo入门 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

系統(tǒng)間服務(wù)調(diào)用方式

瀏覽器直接訪問(wèn)

瀏覽器發(fā)起請(qǐng)求,通過(guò)ajax或jsonp方式請(qǐng)求:

Httpclient方式

系統(tǒng)與系統(tǒng)之間通過(guò)Httpclient發(fā)起http請(qǐng)求來(lái)請(qǐng)求數(shù)據(jù):

http協(xié)議是短連接。

RPC方式

采用長(zhǎng)連接方式。

單點(diǎn)系統(tǒng)中存在的問(wèn)題

在單點(diǎn)登錄系統(tǒng)中的功能中,根據(jù)token查詢(xún)用戶(hù)信息的功能對(duì)系統(tǒng)性能要求最高,如果我們想單獨(dú)調(diào)整該功能的性能是不可能的,因?yàn)樵摴δ芎推渌墓δ荞詈显僖黄稹?/p>

要想單獨(dú)優(yōu)化該功能的性能就必須把該功能單獨(dú)出來(lái),我們就可以借助與dubbo框架完成。

什么是dubbo?

簡(jiǎn)介

DUBBO是一個(gè)分布式服務(wù)框架,致力于提供高性能和透明化的RPC遠(yuǎn)程服務(wù)調(diào)用方案,是阿里巴巴SOA服務(wù)化治理方案的核心框架,每天為2,000+個(gè)服務(wù)提供3,000,000,000+次訪問(wèn)量支持,并被廣泛應(yīng)用于阿里巴巴集團(tuán)的各成員站點(diǎn)。

Dubbo是Alibaba開(kāi)源的分布式服務(wù)框架,它最大的特點(diǎn)是按照分層的方式來(lái)架構(gòu),使用這種方式可以使各個(gè)層之間解耦合(或者最大限度地松耦合)。從服務(wù)模型的角度來(lái)看,Dubbo采用的是一種非常簡(jiǎn)單的模型,要么是提供方提供服務(wù),要么是消費(fèi)方消費(fèi)服務(wù),所以基于這一點(diǎn)可以抽象出服務(wù)提供方(Provider)和服務(wù)消費(fèi)方(Consumer)兩個(gè)角色。關(guān)于注冊(cè)中心、協(xié)議支持、服務(wù)監(jiān)控等內(nèi)容。

官網(wǎng)

http://dubbo.io/
以前的截圖:

版本說(shuō)明

以前的截圖:

我們使用2.5.3版本。

下載

Dubbo官網(wǎng)并沒(méi)有提供下載服務(wù),但是dubbo將源碼托管于github,并且將jar包發(fā)布到maven的中央倉(cāng)庫(kù),所以可以從github和maven中央倉(cāng)庫(kù)來(lái)下載。

源碼下載

https://github.com/alibaba/dubbo
以前的截圖:

發(fā)布包下載

http://repo1.maven.org/maven2/com/alibaba/dubbo/
以前的截圖:

通過(guò)Maven構(gòu)建dubbo

既然可以下載得到源碼以及發(fā)布包,那么為什么要去構(gòu)建dubbo呢?,我們先來(lái)看下dubbo的主要模塊:

其中,核心框架、管理控制臺(tái)、簡(jiǎn)易監(jiān)控中心、簡(jiǎn)易注冊(cè)中心是我們需要的模塊,目前,只有核心模塊可以下載到,其它的均無(wú)法直接下載,所以我們需要構(gòu)建dubbo。

當(dāng)然了,在提供的資料中以及有構(gòu)建好的模塊提供,也可以選擇不重新構(gòu)建。

導(dǎo)入源碼到Eclipse

先導(dǎo)入編譯依賴(lài)到Eclipse:

再導(dǎo)入dubbo源碼到Eclipse:

導(dǎo)入完成:

安裝hessian-lite到本地倉(cāng)庫(kù)

安裝opensesame到本地倉(cāng)庫(kù)

構(gòu)建dubbo


構(gòu)建完成:

[INFO] Reactor Summary: [INFO] [INFO] dubbo-parent ....................................... SUCCESS [ 0.349 s] [INFO] dubbo-common ....................................... SUCCESS [ 4.351 s] [INFO] dubbo-container .................................... SUCCESS [ 0.007 s] [INFO] dubbo-container-api ................................ SUCCESS [ 0.718 s] [INFO] dubbo-container-spring ............................. SUCCESS [ 0.368 s] [INFO] dubbo-container-jetty .............................. SUCCESS [ 0.343 s] [INFO] dubbo-container-log4j .............................. SUCCESS [ 0.432 s] [INFO] dubbo-container-logback ............................ SUCCESS [ 0.431 s] [INFO] dubbo-remoting ..................................... SUCCESS [ 0.003 s] [INFO] dubbo-remoting-api ................................. SUCCESS [ 1.717 s] [INFO] dubbo-remoting-netty ............................... SUCCESS [ 0.678 s] [INFO] dubbo-remoting-mina ................................ SUCCESS [ 0.528 s] [INFO] dubbo-remoting-grizzly ............................. SUCCESS [ 0.776 s] [INFO] dubbo-remoting-p2p ................................. SUCCESS [ 0.793 s] [INFO] dubbo-remoting-http ................................ SUCCESS [ 0.781 s] [INFO] dubbo-remoting-zookeeper ........................... SUCCESS [ 0.484 s] [INFO] dubbo-rpc .......................................... SUCCESS [ 0.004 s] [INFO] dubbo-rpc-api ...................................... SUCCESS [ 1.174 s] [INFO] dubbo-rpc-default .................................. SUCCESS [ 1.051 s] [INFO] dubbo-rpc-injvm .................................... SUCCESS [ 0.367 s] [INFO] dubbo-rpc-rmi ...................................... SUCCESS [ 0.359 s] [INFO] dubbo-rpc-hessian .................................. SUCCESS [ 0.427 s] [INFO] dubbo-rpc-http ..................................... SUCCESS [ 0.415 s] [INFO] dubbo-rpc-webservice ............................... SUCCESS [ 2.279 s] [INFO] dubbo-cluster ...................................... SUCCESS [ 1.123 s] [INFO] dubbo-registry ..................................... SUCCESS [ 0.007 s] [INFO] dubbo-registry-api ................................. SUCCESS [ 0.839 s] [INFO] dubbo-monitor ...................................... SUCCESS [ 0.004 s] [INFO] dubbo-monitor-api .................................. SUCCESS [ 0.366 s] [INFO] dubbo-filter ....................................... SUCCESS [ 0.004 s] [INFO] dubbo-filter-validation ............................ SUCCESS [ 0.429 s] [INFO] dubbo-filter-cache ................................. SUCCESS [ 0.398 s] [INFO] dubbo-registry-default ............................. SUCCESS [ 0.419 s] [INFO] dubbo-monitor-default .............................. SUCCESS [ 0.370 s] [INFO] dubbo-registry-multicast ........................... SUCCESS [ 0.443 s] [INFO] dubbo-config ....................................... SUCCESS [ 0.005 s] [INFO] dubbo-config-api ................................... SUCCESS [ 1.157 s] [INFO] dubbo-config-spring ................................ SUCCESS [ 1.080 s] [INFO] dubbo-rpc-thrift ................................... SUCCESS [ 0.898 s] [INFO] dubbo-rpc-memcached ................................ SUCCESS [ 0.469 s] [INFO] dubbo-rpc-redis .................................... SUCCESS [ 0.607 s] [INFO] dubbo-registry-zookeeper ........................... SUCCESS [ 0.574 s] [INFO] dubbo-registry-redis ............................... SUCCESS [ 0.724 s] [INFO] dubbo .............................................. SUCCESS [ 5.777 s] [INFO] dubbo-simple ....................................... SUCCESS [ 0.003 s] [INFO] dubbo-registry-simple .............................. SUCCESS [ 5.491 s] [INFO] dubbo-monitor-simple ............................... SUCCESS [ 11.807 s] [INFO] dubbo-admin ........................................ SUCCESS [ 4.867 s] [INFO] dubbo-demo ......................................... SUCCESS [ 0.003 s] [INFO] dubbo-demo-api ..................................... SUCCESS [ 0.237 s] [INFO] dubbo-demo-provider ................................ SUCCESS [ 9.309 s] [INFO] dubbo-demo-consumer ................................ SUCCESS [ 9.491 s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:16 min [INFO] Finished at: 2016-05-31T11:22:10+08:00 [INFO] Final Memory: 73M/1725M [INFO] ------------------------------------------------------------------------

找到對(duì)應(yīng)的模塊包

核心框架

管理控制臺(tái)

簡(jiǎn)易監(jiān)控中心

簡(jiǎn)易注冊(cè)中心

Dubbo框架說(shuō)明

背景

服務(wù)治理

架構(gòu)

調(diào)用關(guān)系:
1. 服務(wù)容器負(fù)責(zé)啟動(dòng),加載,運(yùn)行服務(wù)提供者。
2. 服務(wù)提供者在啟動(dòng)時(shí),向注冊(cè)中心注冊(cè)自己提供的服務(wù)。
3. 服務(wù)消費(fèi)者在啟動(dòng)時(shí),向注冊(cè)中心訂閱自己所需的服務(wù)。
4. 注冊(cè)中心返回服務(wù)提供者地址列表給消費(fèi)者,如果有變更,注冊(cè)中心將基于長(zhǎng)連接推送變更數(shù)據(jù)給消費(fèi)者。
5. 服務(wù)消費(fèi)者,從提供者地址列表中,基于軟負(fù)載均衡算法,選一臺(tái)提供者進(jìn)行調(diào)用,如果調(diào)用失敗,再選另一臺(tái)調(diào)用。
6. 服務(wù)消費(fèi)者和提供者,在內(nèi)存中累計(jì)調(diào)用次數(shù)和調(diào)用時(shí)間,定時(shí)每分鐘發(fā)送一次統(tǒng)計(jì)數(shù)據(jù)到監(jiān)控中心。

總結(jié)

以上是生活随笔為你收集整理的【SSM分布式架构电商项目-32】Dubbo入门的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。