真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

SpringBoot中如何使用Dubbo分布式服務(wù)

SpringBoot中如何使用Dubbo分布式服務(wù),針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

安州網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)從2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

改造前

之前在 SpringBoot 中使用 Dubbox是這樣的。先簡(jiǎn)單記錄下版本,Dubbox-2.8.4、zkclient-0.6、zookeeper-3.4.6。

項(xiàng)目中引入 spring-context-dubbo.xml 配置文件如下:


    
    
    
    
    
    
    
    
    
    
         
    

啟動(dòng)類引入以下注解:

@SpringBootApplication@ImportResource({"classpath:spring-context-dubbo.xml"})public class Application{    private static final Logger logger = Logger.getLogger(Application.class);    public static void main(String[] args) throws InterruptedException,
            IOException {
        logger.info("支付項(xiàng)目啟動(dòng) ");
    }
}

改造后

然而 SpringBoot 引入了新的概念 Spring Boot Starter,它有效的降低了項(xiàng)目開發(fā)過(guò)程的復(fù)雜程度,對(duì)于簡(jiǎn)化開發(fā)操作有著非常好的效果。

starter的理念

starter 會(huì)把所有用到的依賴都給包含進(jìn)來(lái),避免了開發(fā)者自己去引入依賴所帶來(lái)的麻煩。

需要注意的是不同的 starter 是為了解決不同的依賴,所以它們內(nèi)部的實(shí)現(xiàn)可能會(huì)有很大的差異,例如 jpa 的starter 和 redis 的 starter 可能實(shí)現(xiàn)就不一樣,這是因?yàn)?starter 的本質(zhì)在于 synthesize,這是一層在邏輯層面的抽象,也許這種理念有點(diǎn)類似于 Docker,因?yàn)樗鼈兌际窃谧鲆粋€(gè)“包裝”的操作,如果你知道 Docker 是為了解決什么問(wèn)題的,也許你可以用 Docker 和 starter 做一個(gè)類比。

starter的實(shí)現(xiàn)

雖然不同的starter實(shí)現(xiàn)起來(lái)各有差異,但是他們基本上都會(huì)使用到兩個(gè)相同的內(nèi)容:ConfigurationProperties和AutoConfiguration。

因?yàn)镾pring Boot堅(jiān)信“約定大于配置”這一理念,所以我們使用ConfigurationProperties來(lái)保存我們的配置,并且這些配置都可以有一個(gè)默認(rèn)值,即在我們沒(méi)有主動(dòng)覆寫原始配置的情況下,默認(rèn)值就會(huì)生效,這在很多情況下是非常有用的。

除此之外,starter的ConfigurationProperties還使得所有的配置屬性被聚集到一個(gè)文件中(一般在resources目錄下的application.properties),這樣我們就告別了Spring項(xiàng)目中XML地獄。

starter的整體邏輯

SpringBoot中如何使用Dubbo分布式服務(wù)

強(qiáng)如Dubbo,當(dāng)然也會(huì)創(chuàng)建屬于自己的 starter 來(lái)迎合Spring Boot 的火熱。

這里我們使用Dubbo比較新的版本,pom.xml 引入以下:


    com.alibaba
    dubbo
    2.6.2
    com.alibaba.spring.boot
    dubbo-spring-boot-starter
    2.0.0
    org.apache.curator
    curator-recipes
    4.0.1

application.properties 配置:

## dubbo springboot 配置spring.dubbo.application.id=springboot_pay
spring.dubbo.application.name=springboot_pay
spring.dubbo.registry.address=zookeeper://192.168.1.127:2181spring.dubbo.provider.threads=10spring.dubbo.provider.threadpool=fixedspring.dubbo.provider.loadbalance=roundrobin
spring.dubbo.server=truespring.dubbo.protocol.name=dubbo

啟動(dòng)類加入以下注解:

@EnableDubboConfiguration@SpringBootApplicationpublic class Application{    private static final Logger logger = Logger.getLogger(Application.class);    public static void main(String[] args) throws InterruptedException,
            IOException {
        logger.info("支付項(xiàng)目啟動(dòng) ");
    }
}

相關(guān)暴露接口實(shí)現(xiàn)配置:

import org.springframework.stereotype.Component;import com.alibaba.dubbo.config.annotation.Service;@Service@Componentpublic class AliPayServiceImpl implements IAliPayService {      //省略代碼}

關(guān)于SpringBoot中如何使用Dubbo分布式服務(wù)問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。


網(wǎng)站名稱:SpringBoot中如何使用Dubbo分布式服務(wù)
轉(zhuǎn)載注明:http://weahome.cn/article/pssiho.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部