最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Dubbo在Spring和Spring Boot中的使用詳解

 更新時(shí)間:2017年10月31日 14:32:15   作者:自在流云  
這篇文章主要介紹了Dubbo在Spring和Spring Boot中的使用詳解,需要的朋友可以參考下

一、在Spring中使用Dubbo

1、Maven依賴(lài)

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>dubbo</artifactId>
  <version>2.5.3.6</version>
  <exclusions>
    <exclusion>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
    </exclusion>
    <exclusion>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
    </exclusion>
    <exclusion>
      <groupId>org.springframework</groupId>
      <artifactId>spring</artifactId>
    </exclusion>
    <exclusion>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
    </exclusion>
  </exclusions>
</dependency>
<dependency>
  <groupId>com.github.sgroschupf</groupId>
  <artifactId>zkclient</artifactId>
  <version>0.1</version>
</dependency>

2、DUBBO生產(chǎn)者注冊(cè)到zookeeper的xml配置方式

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://code.alibabatech.com/schema/dubbo
    http://code.alibabatech.com/schema/dubbo/dubbo.xsd
    ">
 <!-- 具體的實(shí)現(xiàn)bean -->
 <bean id="demoService"
 class="com.unj.dubbotest.provider.impl.DemoServiceImpl" />
 <!-- 提供方應(yīng)用信息,用于計(jì)算依賴(lài)關(guān)系 -->
 <dubbo:application name="xixi_provider" />
 <!-- 使用multicast廣播注冊(cè)中心暴露服務(wù)地址 
 <dubbo:registry address="multicast://224.5.6.7:1234" />-->
 <!-- 使用zookeeper注冊(cè)中心暴露服務(wù)地址 -->
 <dubbo:registry address="zookeeper://127.0.0.1:2181" />
 <!-- 用dubbo協(xié)議在20880端口暴露服務(wù) -->
 <dubbo:protocol name="dubbo" port="20880" />
 <!-- 聲明需要暴露的服務(wù)接口 -->
 <dubbo:service interface="com.unj.dubbotest.provider.DemoService" version="mys"
 ref="demoService" />
</beans>

3、DUBBO消費(fèi)者注冊(cè)到zookeeper的xml配置方式

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
 xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans.xsd 
    http://code.alibabatech.com/schema/dubbo 
    http://code.alibabatech.com/schema/dubbo/dubbo.xsd 
    ">
 <!-- 消費(fèi)者應(yīng)用信息,用于提供依賴(lài)關(guān)系 -->
 <dubbo:application name="consumer-of-helloworld-app" />
 <!-- 注冊(cè)地址,用于消費(fèi)者尋找服務(wù) -->
 <dubbo:registry protocol="zookeeper" address="127.0.0.1:2181,10.128.3.33:2181" />
 <dubbo:consumer timeout="5000" />
 <!-- 引用的服務(wù) -->
 <dubbo:reference id="demoService"interface="com.unj.dubbotest.provider.DemoService" version="mys" />
</beans>

二、在Spring Boot中使用Dubbo

在Spring Boot中使用Dubbo,不需要使用xml的方式來(lái)配置生產(chǎn)者和消費(fèi)者,需要使用@Bean注解的方式來(lái)進(jìn)行配置。

1、Maven依賴(lài)

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
  <version>1.2.5.RELEASE</version>
</dependency>
<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter</artifactId>
  <version>1.2.5.RELEASE</version>
</dependency>
<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>dubbo</artifactId>
  <version>2.5.3.6</version>
  <exclusions>
    <exclusion>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
    </exclusion>
    <exclusion>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
    </exclusion>
    <exclusion>
      <groupId>org.springframework</groupId>
      <artifactId>spring</artifactId>
    </exclusion>
    <exclusion>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
    </exclusion>
  </exclusions>
</dependency>
<dependency>
  <groupId>com.github.sgroschupf</groupId>
  <artifactId>zkclient</artifactId>
  <version>0.1</version>
</dependency>

2、Dubbo基礎(chǔ)配置

public class DubboBaseConfig {
  @Bean
  public RegistryConfig registry() {
    RegistryConfig registryConfig = new RegistryConfig();
    registryConfig.setAddress("127.0.0.1:2181");
    registryConfig.setProtocol("zookeeper");
    return registryConfig;
  }
  @Bean
  public ApplicationConfig application() {
    ApplicationConfig applicationConfig = new ApplicationConfig();
    applicationConfig.setName("testApp");
    return applicationConfig;
  }
  @Bean
  public MonitorConfig monitorConfig() {
    MonitorConfig mc = new MonitorConfig();
    mc.setProtocol("registry");
    return mc;
  }
  @Bean
  public ReferenceConfig referenceConfig() {
    ReferenceConfig rc = new ReferenceConfig();
    rc.setMonitor(monitorConfig());
    return rc;
  }
  @Bean
  public ProtocolConfig protocol() {
    ProtocolConfig protocolConfig = new ProtocolConfig();
    protocolConfig.setPort(20880);
    return protocolConfig;
  }
  @Bean
  public ProviderConfig provider() {
    ProviderConfig providerConfig = new ProviderConfig();
    providerConfig.setMonitor(monitorConfig());
    return providerConfig;
  }
}

3、Dubbo生產(chǎn)者配置,需要繼承Dubbo基礎(chǔ)配置

@Configuration
public class ExportServiceConfig extends DubboBaseConfig {
  @Bean
  public ServiceBean<Person> personServiceExport(Person person) {
    ServiceBean<Person> serviceBean = new ServiceBean<Person>();
    serviceBean.setProxy("javassist");
    serviceBean.setVersion("myversion");
    serviceBean.setInterface(Person.class.getName());
    serviceBean.setRef(person);
    serviceBean.setTimeout(5000);
    serviceBean.setRetries(3);
    return serviceBean;
  }
}

4、Dubbo消費(fèi)者配置,需要繼承Dubbo基礎(chǔ)配置

@Configuration
public class ReferenceConfig extends DubboBaseConfig {
  @Bean
  public ReferenceBean<Person> person() {
    ReferenceBean<Person> ref = new ReferenceBean<>();
    ref.setVersion("myversion");
    ref.setInterface(Person.class);
    ref.setTimeout(5000);
    ref.setRetries(3);
    ref.setCheck(false);
    return ref;
  }
}

5、直接從Spring容器中拿去Person接口即可。

總結(jié)

以上所述是小編給大家介紹的Dubbo在Spring和Spring Boot中的使用詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Java BigDecimal中divide方法案例詳解

    Java BigDecimal中divide方法案例詳解

    這篇文章主要介紹了Java BigDecimal中divide方法案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • 解決IDEA導(dǎo)入javaWeb項(xiàng)目注解爆紅的問(wèn)題

    解決IDEA導(dǎo)入javaWeb項(xiàng)目注解爆紅的問(wèn)題

    這篇文章主要介紹了解決IDEA導(dǎo)入javaWeb項(xiàng)目注解爆紅的問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Java Hibernate中的查詢(xún)策略和抓取策略

    Java Hibernate中的查詢(xún)策略和抓取策略

    Hibernate是一種Java對(duì)象關(guān)系映射框架,提供了多種查詢(xún)和抓取策略,用于優(yōu)化數(shù)據(jù)庫(kù)訪問(wèn)性能。查詢(xún)策略包括延遲加載、立即加載、查詢(xún)緩存等,抓取策略包括join抓取、子查詢(xún)抓取、批量抓取等。這些策略可以根據(jù)實(shí)際應(yīng)用場(chǎng)景進(jìn)行選擇和配置,提高數(shù)據(jù)訪問(wèn)的效率和穩(wěn)定性
    2023-04-04
  • SpringCloud?hystrix斷路器與局部降級(jí)全面介紹

    SpringCloud?hystrix斷路器與局部降級(jí)全面介紹

    什么是服務(wù)降級(jí)?當(dāng)服務(wù)器壓力劇增的情況下,根據(jù)實(shí)際業(yè)務(wù)情況及流量,對(duì)一些服務(wù)和頁(yè)面有策略的不處理或換種簡(jiǎn)單的方式處理,從而釋放服務(wù)器資源以保證核心交易正常運(yùn)作或高效運(yùn)作
    2022-10-10
  • Java橋梁設(shè)計(jì)模式優(yōu)雅地將抽象與實(shí)現(xiàn)分離

    Java橋梁設(shè)計(jì)模式優(yōu)雅地將抽象與實(shí)現(xiàn)分離

    Java橋接設(shè)計(jì)模式通過(guò)將抽象和實(shí)現(xiàn)分離,使得它們可以獨(dú)立地變化,從而實(shí)現(xiàn)更靈活的代碼結(jié)構(gòu)。它是一種優(yōu)雅的設(shè)計(jì)模式,適用于需要處理多個(gè)變化因素的復(fù)雜應(yīng)用程序
    2023-04-04
  • Java將中文轉(zhuǎn)化為拼音的簡(jiǎn)單代碼示例

    Java將中文轉(zhuǎn)化為拼音的簡(jiǎn)單代碼示例

    在我們使用手機(jī)通訊錄或各種APP的搜索功能時(shí),既可以根據(jù)中文搜索,也可以根據(jù)拼音搜索,這種時(shí)候就使用到了中文轉(zhuǎn)拼音的功能了,下面這篇文章主要給大家介紹了關(guān)于Java將中文轉(zhuǎn)化為拼音的簡(jiǎn)單代碼示例,需要的朋友可以參考下
    2024-03-03
  • idea代碼模板設(shè)置方式

    idea代碼模板設(shè)置方式

    這篇文章主要介紹了idea代碼模板設(shè)置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Eclipse操作SVN時(shí)中斷鎖定,文件的解鎖方法

    Eclipse操作SVN時(shí)中斷鎖定,文件的解鎖方法

    這篇文章主要介紹了Eclipse操作SVN時(shí)中斷鎖定,文件的解鎖方法,需要的朋友可以參考下
    2014-08-08
  • Spring 報(bào)錯(cuò):元素

    Spring 報(bào)錯(cuò):元素 "context:component-scan" 的前綴 "context" 未綁定的問(wèn)題解決

    這篇文章主要介紹了Spring 報(bào)錯(cuò):元素 "context:component-scan" 的前綴 "context" 未綁定的問(wèn)題解決的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • Springboot整合minio實(shí)現(xiàn)文件服務(wù)的教程詳解

    Springboot整合minio實(shí)現(xiàn)文件服務(wù)的教程詳解

    這篇文章主要介紹了Springboot整合minio實(shí)現(xiàn)文件服務(wù)的教程,文中的示例代碼講解詳細(xì),對(duì)我們的工作或?qū)W習(xí)有一定幫助,需要的可以參考一下
    2022-06-06

最新評(píng)論

福安市| 云阳县| 新宾| 南乐县| 琼海市| 苍南县| 杭州市| 虹口区| 霞浦县| 竹溪县| 余江县| 红原县| 鹤岗市| 岳西县| 浦东新区| 花莲县| 新兴县| 泌阳县| 丰县| 和龙市| 象山县| 赣州市| 四子王旗| 清流县| 新源县| 醴陵市| 徐州市| 昆明市| 富源县| 常山县| 蒲城县| 芦溪县| 准格尔旗| 城步| 阳山县| 临湘市| 旌德县| 高碑店市| 崇义县| 平顶山市| 衡东县|