初探Soul网关——week01_01

677 阅读2分钟

前言

机缘巧合,联系到了Soul网关的作者--猫大人,加入了一个为期4周的源码小组,这个系列将成为学习Soul的记录,每天一篇。6点起床学习,对我来说,那是很久远的记忆了...

环境搭建

  1. 拉取代码 使用加速器加速下载

    • 注意,加速器会更换 upstream 地址,如果需要提PR,需要手动更改upstream 地址
  2. 修改 maven 配置, homebrew 安装maven@3.2,配置一下默认maven 版本,repository、setting.xml

    • 设置路径:file --> New Projects Settings --> preferences for new projects
  3. 编译代码 mvn clean package install -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Drat.skip=true -Dcheckstyle.skip=true

  • 一把编译成功
    • 用上面那段 mvn 命令,整个 soul 我的小mac两分钟就编译完了
    • 编译的时候会下载依赖,要配置国内的镜像仓库,不然会很慢
  1. 准备数据库

    docker 起一个空的 MySQL 数据(名字:soul),查看 admin 工程下配置文件,与配置文件保持一致

    • ⚠️使用 MySQL5.7 及以下版本

启动Soul

看书要首先看大纲、前言,学项目首先要看start up,而我就不一样了,我不仅看了文档,还有猫大人出镜的专属视频

  1. admin 工程

    admin工程是 soul 的配置管理界面,许多网关的界面配置要么不做,要么做的不好,soul的界面配置还是挺好用

  2. bootstrap 工程

    bootstrap 是soul网关的入口,代码量很少(我非常中意这一点),内部远离不清楚,后面可以重点看一下

Example

  1. 多个 soul-example-http 使用 soul 自带的 example 工程(后期好像改为test工程了,我的工程不是最新的),启动多个 soul-example-http,玩下负载均衡

    启动多个http后台配置 图:IEDA启动多个相同工程 两个http后台在admin 图:项目在admin上的注册信息

  2. dubbo 工程

http --> 网关--> dubbo provider dubbo使用参考文档