美文网首页
springCloudAlibaba 配置提供者与服务者

springCloudAlibaba 配置提供者与服务者

作者: 孤独时代的飞 | 来源:发表于2019-10-18 09:23 被阅读0次

首先需要安装一个nacos,可以参照:https://nacos.io/zh-cn/docs/quick-start.html 默认端口号8848,安装之后我们的服务就可以注册到nacos上了。

nacos官网是这样介绍的:
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以 “服务” 为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

本案例使用了spring-cloud-alibaba 2.1.0版本(版本不同,依赖名字可能不同。)
创建项目
父项目pom引入

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.8.RELEASE</version>
    <relativePath/>
</parent>

<properties>
    <java.version>1.8</java.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Greenwich.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.1.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

创建提供者项目
引入基础jar包

<dependencies>
    <!-- Spring Boot Begin -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    <!-- Spring Boot End -->

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>

</dependencies>

配置文件如下:

image.png

启动类上需要@EnableDiscoveryClient表示让注册中心能够发现,扫描到该服务。


image.png

创建测试controller,并且提供一个服务

@GetMapping(value = "/echo/{string}")
public String echo(@PathVariable String string) {
    return "Hello Nacos Provider " + string;
}

创建消费者项目并引入基础jar包

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>
</dependencies>

配置文件和提供者一样;但是需要修改服务名和端口号

启动类需要@EnableDiscoveryClient和@EnableFeignClients两个标签。EnableFeignClients代表启用Fegin客户端


image.png

创建一个service 注入提供者的服务

image.png

创建测试controller


image.png

此时启动提供者和消费者项目即可注册到注册中心,访问消费者controller即可连接到提供者的服务。如下图


image.png

相关文章

网友评论

      本文标题:springCloudAlibaba 配置提供者与服务者

      本文链接:https://www.haomeiwen.com/subject/wmfzectx.html