入门运行Soul

简介: Soul 是基于 WebFlux 构建的响应式 API 网关,支持高性能、异步处理与多语言集成,兼容 Dubbo、Spring Cloud 等主流框架。具备插件化架构、动态配置、流量控制、鉴权限流等丰富功能,支持集群部署与灰度发布,网关延迟低至 1~2ms,适用于高并发微服务场景。

前言

Soul 是基于 WebFlux 实现的响应式的 API 网关,具有异步、高性能、跨语言等特点。

目前 Soul 功能列表如下:

  • 支持各种语言,无缝集成到 Dubbo、Spring Cloud、Spring Boot 中。

Soul 是极其少支持 Dubbo 的 API 网关,通过 Dubbo 泛化调用 实现。

  • 支持各种语言(http协议),支持 dubbo,springcloud协议。
  • 插件化设计思想,插件热插拔,易扩展。
  • 灵活的流量筛选,能满足各种流量控制。
  • 内置丰富的插件支持,鉴权,限流,熔断,防火墙等等。
  • 流量配置动态化,性能极高,网关消耗在 1~2ms。
  • 支持集群部署,支持 A/B Test, 蓝绿发布。

整体架构如下图所示:

1.下载导入

执行:git clone https://github.com/Dromara/soul,下载到本地,导入到Idea中

2.启动soul-admin

更改soul-admin中配置文件,数据库模块

需要现在本地创建一个soul的数据库,如果不想使用这个名字也可以更改默认url配置项中的名称


运行之后,访问 http://127.0.0.1:9095/ 地址,进入登录页,默认内置管理员账号「admin/123456

以上完成admin相关模块启动


如果你的mysql数据库版本比较低,替换:META-INFO下面的schema.sql为下面

📎schema.sql

3.启动网关boostrap

理论上来说,admin启动成功后,直接启动boostrap模块就可以,不会报错,除非想更改配置文件中的数据同步方式,2.0之后的Soul支持WebSocket,Http长轮询,Zookeeper三种方式,默认使用 http 长轮询同步策略,可以做到秒级数据同步,如果刚好有其它类型服务,可以切换,官方建议使用WebSocket。

相关文章
|
9月前
|
Dubbo Java 应用服务中间件
Apache ShenYu 架构学习指南
Apache ShenYu 是一款高性能、插件化的微服务API网关,基于Spring WebFlux + Reactor 构建,支持多协议、动态配置与实时数据同步。本指南以通俗类比和实战路径,带你深入理解其架构设计、核心流程与源码实现,助力快速掌握并参与贡献。
1485 12
|
存储 搜索推荐 算法
快速排序算法详解
快速排序算法详解
24考研|高等数学的基础概念定理(一)——第一章|函数、极限、连续
24考研|高等数学的基础概念定理(一)——第一章|函数、极限、连续
1527 0
|
存储 NoSQL Redis
redis 五种数据结构详解(string,list,set,zset,hash)
redis 五种数据结构详解(string,list,set,zset,hash) Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
2587 0
|
开发工具 Android开发 iOS开发
Flutter应用如何打包发版
Flutter应用程序的打包和发布可以通过Flutter命令行工具完成。
Flutter应用如何打包发版
|
机器学习/深度学习 人工智能 自然语言处理
AIGC给生活带来的优势和劣势分析
AIGC(人工智能产业发展联盟)作为人工智能领域的重要组织,通过推动人工智能技术的发展和应用,
2733 29
|
存储 算法 数据安全/隐私保护
带你读《存储漫谈:Ceph原理与实践》——3.2.4 元数据 / 数据布局
带你读《存储漫谈:Ceph原理与实践》——3.2.4 元数据 / 数据布局
二进制数从0开始的前几个数
二进制数从0开始的前几个数:
2312 0