【Soul源码阅读】2.单机部署 Soul
上一篇中,我们对 Soul 有了一个简单的认识。
在学习一项新技术时,我们先按照官网上的 Demo 把环境搭建起来。今天先搭建一个单机版测试环境。
1.下载源码
soul 的 github 地址: https://github.com/dromara/soul
这里有2个选择:
- 如果只是用来阅读 soul 源码,不会改动,不提交 PR的,直接 git clone 的地址。
- 如果学习源码后,希望参与到 soul 开源项目中,fork 到自己账号下,再 clone 自己账号下的 soul 项目。
这里,我建议大家采用第2种方式,也以第2种方式演示。
git clone https://github.com/hellboy0621/soul.git
为了方便后续拉取最新代码,设置 upstream 远程仓库
git remote add upstream https://github.com/dromara/soul# 后续拉取最新代码时使用
git checkout master
git pull upstream master
后续如果提交 PR 时,会创建单独的 branch 修改代码后上传,目前我们只是阅读源码,所以创建一个 read 的分支,互不影响。
git checkout -b read
把源码下载好后,导入 IDEA 中。
2.启动 MySQL
soul-admin 模块需要把一些数据持久化到 MySQL中。
3.启动 soul-admin 项目
在 IDEA 里找到 soul-admin 模块,按照各自数据库配置,修改配置文件(我的是3306端口号,用户名root,没有密码)
启动完成后,进入控制页面 http://127.0.0.1:9095/,使用 admin/123456 登录。欢迎页面如下:
在插件列表下,所有页面都是空白的。
4.启动 soul-bootstrap,这就是 Soul 网关服务项目,默认端口号是9195。
5.接入 HTTP 应用。
启动 examples 下的 soul-examples-http。
再次访问管理页面的 devide 插件,有了如下选择器。
在 soul-examples-http 项目下的 controller 层,可以看到这些接口信息,如下图这个接口 /order/findById。
此时可以直接访问这个接口 http://localhost:8188/order/findById?id=95
也可以通过网关来访问这个接口 http://localhost:9195/http/order/findById?id=95
今天就先体验到这里,明天我们继续深入的探索 HTTP 服务是如何接入的。
文章是本人一边学习一边记录的,如有错误,请批评指正,谢谢。
【Soul源码阅读】2.单机部署 Soul相关推荐
- 【Soul源码阅读系列(一)】Soul网关初探
本篇文章主要内容如下: Soul是什么 如何在本地运行Soul 对Soul进行压测 Soul 是什么 Soul是什么?它可不是灵魂交友软件! 引用Soul的官网,它是这样描述Soul的: 这是一个异步 ...
- soul源码阅读 启动soul应用
soul的官方文档地址:https://dromara.org/zh-cn/docs/soul/soul.html 素质三连,watch,start,fork之后cl ...
- Soul源码学习(一)——soul原理及环境搭建
概述 Soul 是基于 WebFlux实现的响应式的 API 网关,具有异步.高性能.跨语言等特点. 作者:我希望能够有一样东西像灵魂一样,保护您的微服务.在参考了 Kong.Spring Cloud ...
- 【Soul源码阅读】3.HTTP 用户接入 Soul 流程解析
昨天只是极简入门,关于网关是怎么感知到我们的应用的,相信小伙伴们一定有疑问,今天先来看下 HTTP 用户如何接入 Soul,以及接入的流程是怎样的. 这是官网对于 HTTP 用户的文档,https:/ ...
- 【Soul源码阅读】12.soul-admin 与 soul-bootstrap 同步机制之 http 长轮询解析(上)
目录 1.前情回顾 2.配置 2.1 soul-admin 2.2 soul-bootstrap 3.启动 3.1 启动 soul-admin 3.2 启动 soul-bootstrap 3.2.1 ...
- soul源码阅读 soul数据同步之nacos
nacos的安装在官网明确写的很清楚,这里就不再赘述了.管理页面地址是http://localhost:8848/nacos记得登录用户名密码是nacos/nacos; 启动nacos同步 图1 图2 ...
- Soul源码解析(16)-Soul网关熔断插件使用及源码解读
一.目标 1.使用Soul网关熔断插件: 2.解读熔断插件关键代码: 二.内容 2.1 背景 熔断:在互联网系统中,当下游服务因访问压力过大而响应变慢或失败,上游服务为了保护系统整体的可用性,可以暂时 ...
- Soul网关源码阅读(十)自定义简单插件编写
Soul网关源码阅读(十)自定义简单插件编写 简介 综合前面所分析的插件处理流程相关知识,此次我们来编写自定义的插件:统计请求在插件链中的经历时长 编写准备 首先我们先探究一下,一个P ...
- Soul网关源码阅读(九)插件配置加载初探
Soul网关源码阅读(九)插件配置加载初探 简介 今日来探索一下插件的初始化,及相关的配置的加载 源码Debug 插件初始化 首先来到我们非常熟悉的插件链调用的类: SoulWebHa ...
最新文章
- 鹅厂是如何使用 Git 的?
- Java 14 Hotspot 虚拟机垃圾回收调优指南!
- 修改eclipse启动时eclipse使用的jre
- OpenCV背景扣除Background Subtraction
- malloc()和calloc()有啥区别
- JavaScript:变量提升作用域
- 线性表的顺序存储C++代码实现
- 计算机中常用的三种码制,码制
- activiti5 工作流
- 查看xp计算机物理地址,Xp系统怎么更改物理地址?WinXp系统修改物理地址的方法...
- 【思特奇杯·云上蓝桥-算法集训营】第1周----真题汇总+思路分析
- 李开复写给中国大学生的七封信(2/7)
- Hbase篇(7)-Region的分裂
- 契约锁电子签章在食品行业全产业链的应用场景
- 惠普LaserJet M1216nfh MFP激光打印机开机提示“安装黑色碳粉盒”亮黄灯
- 施耐德服务器屏幕不显示,施耐德 触摸屏 HMI_ presentation -人机界面.ppt
- 如何使用python装饰器_如何使用装饰器(瓶子.py)
- zigbee 问题一:协调器究竟如何选择信道?
- JVM:自动内存管理-垃圾收集器与内存分配策略
- Ios常用第三方框架(一)