<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Dubbo Spring Boot ProjectDubbo 的 Spring Boot 簡化整合

          聯(lián)合創(chuàng)作 · 2023-09-23 12:32

          Dubbo Spring Boot Project 致力于簡化 Dubbo 應(yīng)用在 Spring Boot 環(huán)境中的開發(fā),主要包括自動裝配(Auto-Configure)、外部化配置(Externalized-Configuration)以及生產(chǎn)準(zhǔn)備(Actuator)等。

          快速上手

          服務(wù)接口(RPC)

          public interface DemoService {
          
              String sayHello(String name);
          
          }

          服務(wù)提供者(Provider)

          實現(xiàn)DemoServer接口提供服務(wù)(放置于 com.alibaba.boot.dubbo.demo.provider.service包下):

          @Service(
                  version = "1.0.0",
                  application = "${dubbo.application.id}",
                  protocol = "${dubbo.protocol.id}",
                  registry = "${dubbo.registry.id}"
          )
          public class DefaultDemoService implements DemoService {
          
              public String sayHello(String name) {
                  return "Hello, " + name + " (from Spring Boot)";
              }
          
          }

          配置application.properties 以提供外部化配置源:

          # Spring boot application
          spring.application.name = dubbo-provider-demo
          server.port = 9090
          management.port = 9091
          
          # Dubbo 組件 (如 @Service , @Reference) 掃描路徑,多路徑以","分割
          dubbo.scan.basePackages  = com.alibaba.boot.dubbo.demo.provider.service
          
          # Dubbo Config Bean 外部化配置
          dubbo.application.id = dubbo-provider-demo
          dubbo.application.name = dubbo-provider-demo
          dubbo.protocol.id = dubbo
          dubbo.protocol.name = dubbo
          dubbo.protocol.port = 12345
          dubbo.registry.id = my-registry

          提供服務(wù)提供者引導(dǎo)類:

          @SpringBootApplication
          public class DubboProviderDemo {
          
              public static void main(String[] args) {
          
                  SpringApplication.run(DubboProviderDemo.class,args);
          
              }
          
          }

          服務(wù)消費者(Consumer)

          實現(xiàn)服務(wù)消費者 Controller (位于com.alibaba.boot.dubbo.demo.consumer.controller包下):

          @RestController
          public class DemoConsumerController {
          
              @Reference(version = "1.0.0",
                      application = "${dubbo.application.id}",
                      url = "dubbo://localhost:12345")
              private DemoService demoService;
          
              @RequestMapping("/sayHello")
              public String sayHello(@RequestParam String name) {
                  return demoService.sayHello(name);
              }
          
          }

          增加外部化配置至application.properties

          # Spring boot application
          spring.application.name = dubbo-consumer-demo
          server.port = 8080
          management.port = 8081
          
          # Dubbo Config Bean 外部化配置
          dubbo.application.id = dubbo-consumer-demo
          dubbo.application.name = dubbo-consumer-demo
          dubbo.protocol.id = dubbo
          dubbo.protocol.name = dubbo
          dubbo.protocol.port = 12345

          提供服務(wù)消費者引導(dǎo)類:

          @SpringBootApplication(scanBasePackages = "com.alibaba.boot.dubbo.demo.consumer.controller")
          public class DubboConsumerDemo {
          
              public static void main(String[] args) {
          
                  SpringApplication.run(DubboConsumerDemo.class,args);
          
              }
          
          }
          瀏覽 12
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  av婷婷免费在线观看 | A∨免费观看| MD-0127 艾秋 分享骚货老婆 强势调教处男晚辈 | 91AV免费在线观看 | 国产精品久久在线视频 |