您的位置 首页 java

SpringCloud中的Zuul路由组件实现路由Demo

一、首先搭建一个eureka的注册中心:

1.在启动类上加上注解@EnableEureka server

2.在资源文件中配置注册中心 的一些配置

 server.port=8888
eureka.instance.hostname= localhost 
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone={eureka.instance.hostname}:${server.port}/eureka/
  

这样注册中心就搭好了。

二、搭建一个普通的服务提供者,并将服务注册到注册中心

1.在服务提供的启动类上加上注解@EnableDiscoveryClient

2.然后在资源文件中配置自己的服务和连接注册中心的配置

 server.port=9009
spring.application.name=ok
eureka.client.service-url.defaultZone=  

服务名称是ok,端口号是9009

下面是发布的服务:访问返回ok

 @RestController
public class Ctl {

    @RequestMapping("/ tts ")
    public String tts(){
        return "ok";
    }
}
  
SpringCloud中的Zuul路由组件实现路由Demo

两个都启动之后访问一下localhost:9009/tts,可以成功访问

三、然后在写Zuul路由器的服务

1.在建立项目的时候把zuul的依赖加上包括eureka的依赖,因为有它也需要注册到注册中心

          <dependency>
            <groupId> org .springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
        </dependency>  

2.建完项目之后在启动类上加上注解@EnableZuulProxy

1. 在资源文件中加上配置到注册中心的配置端口号是9008

 
server.port=9008
spring.application.name=zuulserver
eureka.client.service-url.defaultZone=
  

2.然后启动访问localhost:9008加上服务名称

3.可以看到这时候通过访问zuul路由访问到了9009注册的服务实现了路由

4.最后为了方便有时候服务的名称过长,为了统一管理可以在资源文件中加上一个配置:

 zuul.routes.ok=/app/**  

ok是服务的名称记得修改,后面是映射的路径,然后直接访问这个路径就可以

这个是加上配置重启之后访问的路径。

文章来源:智云一二三科技

文章标题:SpringCloud中的Zuul路由组件实现路由Demo

文章地址:https://www.zhihuclub.com/186707.shtml

关于作者: 智云科技

热门文章

网站地图