写下此文章只为了记录Surging微服务学习过程,并且分享给广大想学习surging的基友,方便广大基友快速入门,让程序跑起来。
本篇文章只记录让Surging跑起来,暂时不涉及部署方面,本文参考了其他几位大佬的文章,精简整理的
一.准备工作:
1.先把surging搞下来
2.Win10 Hyper-v开启来,我们本篇中使用轻量linux-- rancherOS,虚机环境搭建
3. RancherOS环境暂时只使用 rabbitmq跟consul
二.运行环境搭建,在RancherOS安装Rabbitmq跟consul(此段配置是照搬)
1.安装consul
我提炼了一下 执行一下命令就行了,做两个consul服务小集群,嘻嘻
由于docker默认创建容器每次重启会重新分配容器内部IP,会导致集群的join的IP 链接不上从而重启失败!
我们设置docker的consul 容器为固定IP
docker network create --subnet=172.25.0.0/16 consulnet --创建自定义网络类型,并且指定网段
consul 服务端 node1 --请按照顺序执行一下命令
consul 服务端 node2
2.安装rabbitmq
浏览器打开RancherOS ip:15672 即可进入rabbitmq 的UI
三.Surging项目配置
1.修改Surging.ApiGateway网关项目下的gatewaySetting.json
2.修改Surging.ApiGateway网关项目下的Program
3.修改Surging.Services.Server\Configs\consul.json
4.修改Surging.Services.Server下的eventBusSettings.json
5.修改Surging.Services.Server下的surgingSettings.json (Rootpath: surging会扫描该路径,加载该路径下的模块)
四.Surging运行起来
1.设置多项目启动,直接F5即可运行
2,http://localhost:8001/即可查看网关UI
3.用postman请求下user模块,Content-Type加application/json,即可看到请求结果
4.由于surging源码带的demo(Surging.Services.Server)是直接引用了,common模块,因此可直接请求。现在我们来试试rootpath加载manage模块。
我们用命令发布到 我们设置的rootpath(配置路径就是 三--5 图里的 d:\surgingApp),假设我的解决方案目录是d:\surging\src\
dotnet publish d:\surging\src\Surging.Modules\Surging.Modules.Manager\Surging.Modules.Manager.csproj -o d:\surgingApp\Modules\Manager -c release
此时我们打开POSMAN请求一下manage的服务
OK,跑起来了,咱们可以深入研究了!
Surging官方技术群:615562965