soul入门 第二章 divide 插件
插件的概念
插件,顾名思义可插拔非常灵活,soul提供了12个插件,可以通过admin控制台启用或关闭,原则上每一个请求都会依次通过所有开启的插件。
divide插件的作用是处理http请求,然后分发到下游相应服务。
http协议的服务是如果注册到网关的
1、网关的启动,上一章已经介绍过,这里不赘述,详情请移步 环境搭建及启动
2、启动soul官方提供的样例工程 soul-test-http
接入soul网关
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-client-springmvc</artifactId>
<version>${soul.version}</version>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-plugin-httpclient</artifactId>
<version>${last.version}</version>
</dependency>
目标网关设置
soul:
http:
adminUrl: http://localhost:9095 # 本应用注册到网关soul-admin到地址
port: 8188 #注意该端口为本应用启动端口
contextPath: /http # 路由前缀
appName: http #应用名称
full: false
接口设置
@RestController
@RequestMapping("/test")
@SoulSpringMvcClient(path = "/test/**")
public class HttpTestController {
}
SoulSpringMvcClient注解某个controller类下所有方法接口注册到目标网关,如果注解到方法上表示该方法注册到网关。
以上的设置都是基于springboot的工程来的,如果你的应用不是基于springboot甚至不是java,而是php服务,那么也没关系,只需要通过divide插件管理界面手动把你的服务添加到控制台即可,每个服务可以理解为一个选择器。