Dubbo的配置使用及原理

2022-09-14 10:12:24 字數 3314 閱讀 4587

1. dubbo簡介

dubbo 是一款微服務開發框架,它提供了 rpc通訊 與 微服務治理 兩大關鍵能力。這意味著,使用 dubbo 開發的微服務,將具備相互之間的遠端發現與通訊能力, 同時利用 dubbo 提供的豐富服務治理能力,可以實現諸如服務發現、負載均衡、流量排程等服務治理訴求。同時 dubbo 是高度可擴充套件的,使用者幾乎可以在任意功能點去定製自己的實現,以改變框架的預設行為來滿足自己的業務需求。

dubbo 提供了構建雲原生微服務業務的一站式解決方案,可以使用 dubbo 快速定義並發布微服務元件,同時基於 dubbo 開箱即用的豐富特性及超強的擴充套件能力,構建運維整個微服務體系所需的各項服務治理能力,如 tracing、transaction 等,dubbo 提供的基礎能力包括:

dubbo 提供了從服務定義、服務發現、服務通訊到流量管控等幾乎所有的服務治理能力,並且嘗試從使用上對使用者遮蔽底層細節,以提供更好的易用性。

2. dubbo的架構

節點角色說明:

中心化元件:

元資料中心。

3. dubbo配置(spring整合使用)

(1). 使用xml進行配置

provider.xml 示例

<

beans

xmlns:xsi

=""xmlns:dubbo

=""xmlns

=""xsi:schemalocation

=" /spring-beans.xsd

/dubbo.xsd"

>

<

name

="demo-provider"

/>

<

dubbo:registry

address

="zookeeper:"

/>

<

dubbo:protocol

name

="dubbo"

port

="20890"

/>

<

bean

id="demoservice"

class

="org.apache.dubbo.samples.basic.impl.demoserviceimpl"

/>

<

dubbo:service

inte***ce

="org.apache.dubbo.samples.basic.api.demoservice"

ref="demoservice"

/>

beans

>

consumer.xml示例

<

beans

xmlns:xsi

=""xmlns:dubbo

=""xmlns

=""xsi:schemalocation

=" /spring-beans.xsd

/dubbo.xsd"

>

<

name

="demo-consumer"

/>

<

dubbo:registry

group

="aaa"

address

="zookeeper:"

/>

<

dubbo:reference

id="demoservice"

check

="false"

inte***ce

="org.apache.dubbo.samples.basic.api.demoservice"

/>

beans

>

標籤詳解:

標籤用途

解釋標籤

用途解釋

服務配置

用於暴露乙個服務,定義服務的元資訊,乙個服務可以用多個協議暴露,乙個服務也可以註冊到多個註冊中心

2

引用配置

用於建立乙個遠端服務**,乙個引用可以指向多個註冊中心

協議配置

用於配置提供服務的協議資訊,協議由提供方指定,消費方被動接受

應用配置

用於配置當前應用資訊,不管該應用是提供者還是消費者

模組配置

用於配置當前模組資訊,可選

註冊中心配置

用於配置連線註冊中心相關資訊

監控中心配置

用於配置連線監控中心相關資訊,可選

提供方配置

當 protocolconfig 和 serviceconfig 某屬性沒有配置時,採用此預設值,可選

消費方配置

當 referenceconfig 某屬性沒有配置時,採用此預設值,可選

方法配置

用於 serviceconfig 和 referenceconfig 指定方法級的配置資訊

引數配置

用於指定方法引數配置

(2). 註解配置

服務提供方

service註解暴露服務

@service

public

class annotationserviceimpl implements

annotationservice

}

增加應用共享配置

=annotation-provider

dubbo.registry.address=zookeeper:

dubbo.protocol.name

=dubbo

dubbo.protocol.port=20880

服務消費方

reference註解引用服務

@component("annotationaction")

public

class

annotationaction

增加應用共享配置

Dubbo使用及底層通訊原理

dubbo採用的是一種非常簡單的模型,要麼是提供方提供服務,要麼是消費方消費服務,所以基於這一點可以抽象出服務提供方 provider 和服務消費方 consumer 兩個角色。dubbo除了可以提供服務之外,還可以實現軟負載均衡。它還提供了兩個功能monitor 監控中心和呼叫中心。這兩個是可選的...

dubbo使用原理

dubbo是阿里巴巴公司開放源 的高效能優秀的伺服器框架,使得應用可通過高效能的rpc實現服務的輸入和輸出功能,可以與spring進行繼承。上述的工作原理 provider 暴露服務方稱之為 服務提供者 consumer 呼叫遠端服務 方稱之為 服務消費者 registry 服務註冊與發現的中心目錄...

Dubbo入門使用(四) Dubbo配置

1 dubbo屬性載入 1 參照dubbo官方文件 配置 xml配置 dubbo服務在啟動時,可以新增虛擬機器引數,並會優先生效 如 2 配置 屬性配置 2 示例 啟動時檢查 dubbo啟動時會檢查它所需要消費的服務是不是已經存在註冊中心裡面,如果沒有,就會保錯。預設check true 可以通過c...