日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

概述

Dubbo的配置項非常多,但所有配置項分為三大類,服務發現、服務治理、性能調優。服務發現類的配置項,表示該配置項用于服務的注冊與發現,目的是讓消費方找到提供方;服務治理類的配置項,表示該配置項用于治理服務間的關系,或為開發測試提供便利條件;對于性能調優類的配置項,則表示該配置項用于調優性能,不同的選項對性能會產生影響。所有配置最終都將轉換為URL表示,并由服務提供方生成,經注冊中心傳遞給消費方,各屬性對應URL的參數。不同的配置項,有不同的使用場景,掌握配置項的含義和使用場景,是用好Dubbo框架的基本功。

Dubbo目前可供配置的配置項或者xml標簽一共有13種,涉及可配置的屬性210個,有些配置項和屬性存在優先級和缺省關系,也并不是每個配置項都是必須的。下面是這13種配置項及其常用屬性的配置說明。

dubbo:service

服務提供者暴露服務配置,用來配置一個服務,在服務提供者端進行配置。對應的配置類是org.Apache.dubbo.config.ServiceConfig。比如下面的配置,定義和曝露了一個用戶服務userService。

interface:服務接口名,一般使用接口的完整類名,必填項

ref:服務接口實現類bean的id引用,必填項

<bean id="userService" class="com.fandou.coffee.provider.user.UserServiceImpl"/>
  
<dubbo:service interface="com.fandou.coffee.api.user.UserService" ref="userService"/>

dubbo:reference

服務消費者引用服務配置,在服務消費者端配置,用來定義引用一個遠程的服務。對應的配置類是org.apache.dubbo.config.ReferenceConfig。

id:服務引用BeanId,必填項

interface:服務接口名,一般使用接口的完整類名,與dubbo:service中的interface保持一致,必填項

check:檢查引用的服務是否存在,屬于服務治理類的屬性,默認為true,如果注冊中心不存在應用的服務,將報錯拋出異常。可選項。

<dubbo:reference id="userService" check="false" interface="com.fandou.coffee.api.user.UserService"/>

dubbo:protocol

服務提供者協議配置,服務提供者端或服務消費者端均可配置。對應的配置類是org.apache.dubbo.config.ProtocolConfig。同時,如果需要支持多協議,可以聲明多個dubbo:protocol標簽,并在dubbo:service中通過protocol屬性指定使用的協議,多個協議id用逗號分隔。

id:協議BeanId,可以在dubbo:service的protocol引用此id,如果id不填,缺省和name屬性值一樣,重復則在name后加序號。可選項。

name:協議名稱,如果不配置dubbo:protocol,將使用dubbo:provider中的設置,默認dubbo。必填。

port:協議通信端口號,可選項,缺省值20880.

<dubbo:protocol name="dubbo" port="20880"/>

dubbo:registry

注冊中心配置,Dubbo目前主要支持zookeeper以及redis等。對應的配置類是org.apache.dubbo.config.RegistryConfig。同時如果有多個不同的注冊中心,可以聲明多個dubbo:registry標簽,并在dubbo:service或dubbo:reference的registry屬性指定使用的注冊中心。

id:注冊中心引用BeanId,可選項,可以在dubbo:service的registry或dubbo:reference的registry中引用此ID。

address:注冊中心服務器地址,格式為protocol://ip:port,必填項。如果地址沒有端口缺省為9090,同一集群內的多個地址用逗號分隔,如:protocol://ip:port,protocol://ip:port,不同集群的注冊中心,請配置多個dubbo:registry標簽。

protocol:注冊中心地址協議,支持dubbo, multicast, zookeeper, redis, consul, sofa, etcd, nacos等協議,可選項,缺省值為dubbo。

port:注冊中心缺省端口,當address沒有帶端口時使用此端口作為缺省值,可選項,缺省值為9090。

username:登錄注冊中心用戶名,如果注冊中心不需要驗證可不填。可選項。

password:登錄注冊中心密碼,如果注冊中心不需要驗證可不填。可選項。

transport:網絡傳輸方式,可選mina,netty。可選項,缺省值為netty。

下面的配置,使用address屬性,指定了使用的協議、注冊中心服務器地址以及端口號

<dubbo:registry address="zookeeper://192.168.8.156:2181"/>

dubbo:Application

應用信息配置,以及qos等。對應的配置類是org.apache.dubbo.config.ApplicationConfig。

name:當前應用名稱,用于注冊中心計算應用間依賴關系,注意:消費者和提供者應用名不要一樣,此參數不是匹配條件,當前項目叫什么名字就填什么,和提供者消費者角色無關。必填項。

logger:日志輸出方式,可選:slf4j,jcl,log4j,log4j2,jdk,缺省值為slf4j。

下面的配置定義了一個用戶服務提供者應用,并使用slf4j作為日志輸出。

<dubbo:application name="user-service-provider.xml" logger="slf4j"/>

下面配置了一個服務消費者應用,同時還配置了qos屬性

    <!-- 服務消費方應用名稱,方便用于依賴跟蹤 -->
    <dubbo:application name="user-service-consumer" logger="slf4j">
        <dubbo:parameter key="qos.enable" value="true" />
        <dubbo:parameter key="qos.accept.foreign.ip" value="false" />
        <!-- 配置QOS端口,由于服務提供方端已經使用了默認的22222,這里需要改用以下,否則在同一個機器同時將出現端口占用問題 -->
        <dubbo:parameter key="qos.port" value="33333" />
    </dubbo:application>

dubbo:monitor

監控中心配置,可選配置項。對應的配置類是org.apache.dubbo.config.MonitorConfig。此配配置項只有兩個屬性

protocol:監控中心協議,如果為protocol="registry",表示從注冊中心發現監控中心地址,否則直連監控中心。可選項,缺省值為dubbo。

address:直連監控中心服務器地址,比如address="10.20.130.230:12080"。可選項,缺省值為N/A。

dubbo:module

模塊信息配置,可選配置項。對應的配置類是org.apache.dubbo.config.ModuleConfig。

name:當前模塊名稱,用于注冊中心計算模塊間依賴關系。

下面的配置定義了一個user模塊:

當前模塊名稱,用于注冊中心計算模塊間依賴關系。

dubbo:provider

服務提供者缺省值配置,可選配置項,常用于配置缺省值。對應的配置類是org.apache.dubbo.config.ProviderConfig。同時該標簽為dubbo:service和dubbo:protocol標簽的缺省值設置。

dubbo:consumer

服務消費者缺省值配置,可選配置項,常用于配置缺省值。配置類是org.apache.dubbo.config.ConsumerConfig 。同時該標簽為dubbo:reference標簽的缺省值設置。

dubbo:method

方法級配置,可選配置項。對應的配置類是org.apache.dubbo.config.MethodConfig。同時該標簽為dubbo:service或dubbo:reference的子標簽,用于控制到方法級。

dubbo:argument

方法參數配置,可選配置項。對應的配置類: org.apache.dubbo.config.ArgumentConfig。該標簽為 dubbo:method 的子標簽,用于方法參數的特征描述,比如:

<dubbo:method name="findXxx" timeout="3000" retries="2">
    <dubbo:argument index="0" callback="true" />
</dubbo:method>

dubbo:parameter

選項參數配置,可選配置項。對應的配置類是JAVA.util.Map。同時該標簽為dubbo:protocol或dubbo:service或dubbo:provider>或dubbo:reference或dubbo:consumer的子標簽,用于配置自定義參數,該配置項將作為擴展點設置自定義參數使用。

dubbo:config-center

配置中心,可選配置項。對應的配置類是org.apache.dubbo.config.ConfigCenterConfig。

總結

不同的配置項,有不同的使用場景,掌握配置項的含義和使用場景,是用好Dubbo框架的基本功。

分享到:
標簽:Dubbo
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定