本地代码编译
github上访问soul的代码仓库 : https://github.com/dromara/soul
fork 到自己的仓库
将代码pull到本地
使用 mvn clean package install -Dmaven.test.skip=true -Drat.skip=true -Dcheckstyle.skip=true 命令本地打包编译
项目编译后就可以愉快的本地开始调试运行代码了
soul的特性接下来需要关注的问题
支持各种语言(http协议),支持 dubbo,springcloud协议。
- 之后学习关注下不同协议的实现细节,以及通过什么方式来支持的?
插件化设计思想,插件热插拔,易扩展。
- 如何实现插件化?如何做到热插拔?
灵活的流量筛选,能满足各种流量控制。
- 是怎么做的流量控制?是如何控制的?
内置丰富的插件支持,鉴权,限流,熔断,防火墙等等。
- 支持哪些插件?如何支持的?
流量配置动态化,性能极高,网关消耗在 1~2ms。
- 如何动态化配置?为什么性能很高?如何实现的?
支持集群部署,支持 A/B Test, 蓝绿发布。
- 如何做的A/B Test