Spring Cloud快速开始
本文档演示如何将Spring Cloud服务接入到Apache ShenYu网关。您可以直接在工程下找到本文档的示例代码 。
环境准备
请参考运维部署的内容,选择一种方式启动shenyu-admin。比如,通过 本地部署 启动Apache ShenYu后台管理系统。
启动成功后,需要在基础配置->插件管理中,把springCloud 插件设置为开启。
启动网关,如果是通过源码的方式,直接运行shenyu-bootstrap中的ShenyuBootstrapApplication。
注意,在启动前,请确保网关已经引入相关依赖。
引入网关对Spring Cloud的代理插件,并添加相关注册中心依赖:
<!-- apache shenyu springCloud plugin start-->
<dependency>
<groupId>org.apache.shenyu</groupId>
<artifactId>shenyu-spring-boot-starter-plugin-springcloud</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-commons</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.shenyu</groupId>
<artifactId>shenyu-spring-boot-starter-plugin-httpclient</artifactId>
<version>${project.version}</version>
</dependency>
<!-- springCloud if you config register center is eureka please dependency end-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<!-- apache shenyu springCloud plugin end-->
eureka配置信息如下:
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
instance:
prefer-ip-address: true
特别注意: 请保证springCloud注册中心服务发现配置为开启
- 配置方式
spring:
cloud:
discovery:
enabled: true
- 代码方式
@SpringBootApplication
@EnableDiscoveryClient
public class ShenyuBootstrapApplication {
/**
* Main Entrance.
*
* @param args startup arguments
*/
public static void main(final String[] args) {
SpringApplication.run(ShenyuBootstrapApplication.class, args);
}
}
启动shenyu-bootstrap项目。