dubbo使用3----> spring-cloud-alibaba生态中使用dubbo

1、使用Spring Initializr构建spring-cloud-alibaba体系项目spring-cloud-alibaba-dubbo-example

     step1: 

             dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第1张图片

    step2:

             dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第2张图片

     step3:

             dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第3张图片

      step4:

             dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第4张图片

 

2、搭建nacos服务

      2.1、去官网下载服务压缩包解压:

               

      2.2、启动nacos服务:

               dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第5张图片

      2.3、验证nacos服务:

               打开浏览器输入http://localhost:8848/nacos   用户名:nacos    密码:nacos

               dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第6张图片

              dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第7张图片

 

3、回到项目spring-cloud-alibaba-dubbo-example

      3.1、项目结构,项目全是自动生成的:

               dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第8张图片

               生成的代码为我们自动创建了测试的demo,包括api、provider、consumer,生成的项目是单模块的,但是我们可以使用此项目脚手架进行改进成多模块项目。

       

       3.2、生成的项目的pom.xml文件:



    4.0.0
    com.wzy
    spring-cloud-alibaba-dubbo-example
    0.0.1-SNAPSHOT
    spring-cloud-alibaba-dubbo-example
    Demo project for Spring Boot

    
        1.8
        UTF-8
        UTF-8
        
        2.3.0.RELEASE
        
        2.2.1.RELEASE
    

    
        
        
            org.springframework.boot
            spring-boot-starter
        

        
        
            com.alibaba.cloud
            spring-cloud-starter-alibaba-nacos-discovery
        

        
        
            com.alibaba.cloud
            spring-cloud-starter-dubbo
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
            
                
                    org.junit.vintage
                    junit-vintage-engine
                
            
        
    

    
        
        
            
                com.alibaba.cloud
                spring-cloud-alibaba-dependencies
                ${spring-cloud-alibaba.version}
                pom
                import
            
            
                org.springframework.boot
                spring-boot-dependencies
                ${spring-boot.version}
                pom
                import
            
        
    

    
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.1
                
                    1.8
                    1.8
                    UTF-8
                
            
            
                org.springframework.boot
                spring-boot-maven-plugin
                2.3.0.RELEASE
                
                    com.wzy.springcloudalibabadubboexample.SpringCloudAlibabaDubboExampleApplication
                    
                
                
                    
                        repackage
                        
                            repackage
                        
                    
                
            
        
    


       看完生成的pom.xml你会发现这其实跟构建spring-cloud-netflix体系是一样的道理。

 

4、服务测试

      4.1、启动类:

@SpringBootApplication
public class SpringCloudAlibabaDubboExampleApplication {

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

}

      4.2、修改服务注册与发现中心地址为nacos服务地址:

spring.application.name=spring-cloud-alibaba-dubbo-example
management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
# spring cloud access&secret config
# 可以访问如下地址查看: https://usercenter.console.aliyun.com/#/manage/ak
alibaba.cloud.access-key=****
alibaba.cloud.secret-key=****
# dubbo 服务扫描基础包路径
dubbo.scan.base-packages=com.wzy.springcloudalibabadubboexample
dubbo.protocol.id=dubbo
# Dubbo 服务暴露的协议配置,其中子属性 name 为协议名称,port 为协议端口( -1 表示自增端口,从 20880 开始)
dubbo.protocol.name=dubbo
dubbo.protocol.port=-1
# 挂载到 Spring Cloud 注册中心
#配置文件都是构建项目的时候自动生成的,我们只是将注册地址改为nacos
dubbo.registry.address=nacos://localhost:8848
# 用于服务消费方订阅服务提供方的应用名称的列表,若需订阅多应用,使用 "," 分割。 不推荐使用默认值为 "*",它将订阅所有应用。
# 这里默认使用了当前应用名,请根据需要增加对应的应用名
dubbo.cloud.subscribed-services=spring-cloud-alibaba-dubbo-example

      4.3、启动服务:

               dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第9张图片

               看见如下输出说明服务启动正常。

               我们去查看nacos上的服务数据:

                   dubbo使用3----> spring-cloud-alibaba生态中使用dubbo_第10张图片

                   服务注册正常

5、总结

      spring-cloud-alibaba体系整体来说构建还是很方便的,而且很多组件比Netflix体系更加人性化,看好以后发展。

 

你可能感兴趣的:(dubbo从入门到入魔,dubbo,spring-cloud)