温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何使用阿波罗整合zuul实现动态路由

发布时间:2022-01-12 09:15:25 来源:亿速云 阅读:374 作者:iii 栏目:云计算

今天小编给大家分享一下如何使用阿波罗整合zuul实现动态路由的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

1、前言

Windows 系统搭建基于携程Apollo配置中心分布式模式, 在此基础上,介绍如何使用阿波罗整合zuul实现动态路由。

2、项目搭建

2.1 创建Spring Boot项目apollo-zuul

        apollo-zuul项目用的是Eureka作为服务注册与发现,因此这里我加入了Eureka Client的依赖,同时需要加入zuul网关的依赖实现微服务的路由

        pom.xml文件加入以下依赖

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-eureka</artifactId>
    </dependency>
    <dependency>
        <groupId>com.ctrip.framework.apollo</groupId>
        <artifactId>apollo-client</artifactId>
        <version>0.10.0-SNAPSHOT</version>
    </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-actuator</artifactId>
        <scope>true</scope>
    </dependency>

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

2.2 下载项目

    在官方github项目中,把项目下载下来  https://github.com/ctripcorp/apollo,导入到Eclipse工程中。如下图

如何使用阿波罗整合zuul实现动态路由

        由于官方给出的分布式搭建需要加入很多启动参数,过于繁琐,可以考虑https://gitee.com/234gdfgsdf/open-capacity-platform/tree/master/apollo-master下载

        项目组织结构(功能)[端口]

├── apollo -- 阿波罗配置中心

├    ├── apollo-configservice  (提供配置的修改、发布等功能,服务对象是Apollo Portal) [8080]

├    ├── apollo-adminservice  (提供配置的读取、推送等功能,服务对象是Apollo客户端)[8090]

├    ├── apollo-portal               (管理界面) [8070]

├    └── apollo-zuul                  (阿波罗整合zuul网关)

└── open-eureka-server         (服务注册中心)[1111]

2.3 application.properties 配置写入到Apollo配置中心

2.3.1 application.properties

        如下原本是写在spring boot 工程中的配置信息,接下来写入到配置中心中。

spring.application.name=sop-api-gateway
server.port=9999
zuul.ignored-services="*"

2.3.2 创建apollo项目

如何使用阿波罗整合zuul实现动态路由

        这里我已经创建好了,就不做过多演示了。

如何使用阿波罗整合zuul实现动态路由

        将信息上传写入到配置文件中,然后在把工程中的application.properties文件删除。

2.3.3 新建app.properties文件

如何使用阿波罗整合zuul实现动态路由

2.3.4 编写代码

如何使用阿波罗整合zuul实现动态路由

如何使用阿波罗整合zuul实现动态路由

        application.java启动类

@RestController
@EnableZuulProxy
@EnableApolloConfig
@EnableDiscoveryClient
@SpringBootApplication
public class ApiGateWayApp {

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

        注意加注解。

        然后直接启动即可。。。。。。。

3、结果如下

        访问http://127.0.0.1:9999/test163即可读取阿波罗页面配置参数,页面修改后可刷新所有阿波罗客户端

以上就是“如何使用阿波罗整合zuul实现动态路由”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI