SpringCloud接入参考文档
https://dromara.org/zh-cn/docs/soul/user-springcloud.html
体验基础的SpringCloud代理功能
1.启动eureka,端口8761,可以打开 http://localhost:8761/ 访问下,看是否能访问。
没有搭建过的可以查看Spring-Cloud服务发现Eureka的使用教程
2.启动soul-admin
,打开SpringCloud插件
3.打开soul-bootstrap
模块,修改pom.xml
文件
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-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.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<!-- 当前使用eureka当注册,使用这个 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>2.2.0.RELEASE</version>
</dependency>
<!-- 当前使用nacos当注册,使用这个 -->
<!-- <dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.1.0.RELEASE</version>
</dependency> -->
4.修改soul-bootstrap中的配置文件application-local.yml
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/ # 该地址为eureka启动的地址
instance:
prefer-ip-address: true
5.启动soul-bootstrap
6.启动soul-examples-springcloud下的SoulTestSpringCloudApplication
6.1.访问 http://localhost:9195/springcloud/order/findById?id=1,返回如下
{
"id": "1",
"name": "hello world spring cloud findById"
}
6.2.访问http://localhost:9195/springcloud/order/save,请求如下
{
"id": 1,
"name": "cutie"
}
返回如下
{
"id": "1",
"name": "hello world spring cloud save order"
}
至此,Soul网关转发的功能都已经体验过了,之后将进行正式的Soul源码之旅
- 大致路径如下
1.soul-bootstrap项目启动是如何进行插件加载的
2.如何同步配置的信息的【Websocket,Zookeeper,Http长轮询,Nacos】
3.整体调用流程解析【Http代理,Dubbo代理,Sofa代理,SpringCloud代理】
4.Soul中用到的各类插件解析
5.Soul用到的WebFlux(反应式编程),学习,阅读源码中用到的地方
6.SPI是如何实现的,项目中是如何使用的
目前先这么多,之后顺序不定