参加训练营即将接近尾声,参加源码学习算是对自己最后学习的一个总结吧(感觉自己没有好好学习,在结尾给自己加个猛药吧)。
学习第一步,下载soul源码,源码地址:https://github.com/dromara/soul
谁能想到大晚上的,竟然卡在下载包上:
感觉第一天的任务要完不成了。o(╥﹏╥)o
写点对网关的认识吧。
Soul的介绍
Soul是一个异步高性能,跨语言,响应式的API网关,提供了统一的HTTP访问,无缝支持dubbo,spring-cloud,http并且提供了丰富的插件(限流,熔断,代理转发)。
基本特性:
- 跨语言,因其为http调用,支持多种语言。
- 丰富的插件,有路由监控,熔断,自定义转发,限流等功能。
- 插拔式管理功能。
- 界面管理,即时生效。
- 支持集群部署。
- 可以实现AB测试和灰度测试。
基础架构:
原本我使用的是公司的仓库,发现有很多依赖不支持,故在仓库配置文件中添加了阿里仓库:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
等待仓库加载依赖完成。
执行打包命令:
mvn clean package install -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Drat.skip=true -Dcheckstyle.skip=true
或在idea 页面操作:
注意此处 将测试略过。
项目启动需要依赖本地数据库,将自动建表,请确保数据库连接正常:
修改文件:
/soul/soul-admin/src/main/resources/application.yml
分别启动:
此时可以访问前端页面得到如下界面:http://localhost:9095/#/home
用户名:admin
密码:123456
接下来的一段时间就依次解读整个业务的流程与功能。敬请期待。