1.入门运行Soul

简介: Soul 是基于 WebFlux 的高性能响应式 API 网关,支持 Dubbo、Spring Cloud、HTTP 等多协议,具备插件化、热插拔、动态流量控制、A/B 测试等特性,支持集群部署与多种数据同步方式,适用于高并发微服务架构。

Git地址:https://github.com/Dromara/soul
运行环境:
● MySQL 5.
● JDK 1.8+
● MAVEN 3.2.

● Git
更多原理性知识可以参考官网API:https://dromara.org/zh-cn/docs/soul/induction.html
前言
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为下面

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

相关文章
|
3月前
|
数据可视化 Java 关系型数据库
01-认识Activiti
工作流指如请假、报销等需审批的业务流程,通过可视化引擎实现多节点审批,广泛应用于CRM、WMS等系统。主流技术包括BPMN、Activiti和Flowable,其中Activiti为Java系开源引擎,支持复杂流程自动化,推动企业流程数字化。
|
3月前
|
存储 算法 BI
xxljob本地运行
本文介绍XXL-JOB分布式任务调度的部署与使用。包含源码获取、数据库导入、服务端配置启动、客户端注册及执行器配置。详细说明各数据表作用、路由策略类型,并演示任务创建、参数设置与执行日志查看,助你快速上手XXL-JOB。
|
3月前
|
Java 开发工具 数据安全/隐私保护
项目《中州养老》
《中州养老》是一个面向养老院的后台管理系统,涵盖员工管理端与家属小程序端。系统功能包括预约参观、入住退住、计费管理、健康监测等模块。项目采用Vue3+TS+TDesign构建前端,后端基于SpringBoot(SSM),集成Redis缓存、Nginx部署、阿里云OSS与IoT平台。支持RBAC权限控制、智能设备数据实时监控、微信登录、定时任务处理及多线程高效通信,实现养老业务全流程数字化管理。(238字)
|
3月前
|
存储 缓存 算法
零拷贝
实现文件传输时,传统方式因频繁系统调用导致大量上下文切换与内存拷贝,性能低下。零拷贝技术通过合并系统调用、减少用户态与内核态切换,并利用PageCache和SG-DMA,显著降低开销。大文件场景下可结合异步IO与直接IO,避免缓存污染,提升并发性能。
|
3月前
|
安全 Java Spring
2.过滤器链加载原理
本文深入解析Spring Security过滤器加载机制,通过分析DelegatingFilterProxy、FilterChainProxy与SecurityFilterChain源码,揭示十五个安全过滤器如何自动装配并形成过滤链,帮助理解框架底层工作原理,为自定义认证页面奠定基础。
|
3月前
|
存储 JSON NoSQL
MongoDB常用命令
本教程介绍MongoDB数据库操作,涵盖数据库与集合的创建、删除,文档的增删改查及分页排序查询。以文章评论系统为例,演示数据存储结构设计、CRUD操作、条件查询、投影与排序,以及分页实现方法,帮助快速掌握MongoDB基本用法。(238字)
|
3月前
|
安全 Java 开发工具
工程搭建与验证
本文介绍如何基于阿里云脚手架快速搭建SpringBoot工程(选用2.7.6版本),并整合Spring Security。内容涵盖项目创建、代码导入、Web依赖引入、接口编写与验证,以及Spring Security的集成与默认登录机制。通过简单步骤实现安全访问控制,附完整代码仓库及分支。
|
3月前
|
XML Java 数据库连接
映射关系(1-1 1-n n-n)
本内容介绍MyBatis中四种关联映射:一对一(属性与字段映射,可用resultMap解决命名不一致)、一对多(如用户对应多个角色,使用`<collection>`)、多对一(如作者与博客,使用`<association>`)和多对多(如用户与部门,借助中间类并通过`<collection>`实现双向关联)。
|
3月前
|
存储 负载均衡 Java
第九章 SpringCloud框架
Nacos支持服务注册发现与配置管理,基于心跳机制实现健康监测,提供分级存储模型(命名空间、组、DataId)实现多环境隔离。相比Eureka,Nacos具备更优的实时推送、更短心跳周期,并融合配置中心功能。OpenFeign结合LoadBalancer实现服务调用负载均衡,支持轮询、随机等策略。Sentinel提供流量控制、熔断降级,通过滑动窗口算法精准限流。Spring Cloud Gateway作为网关核心,实现路由匹配、断言过滤与请求处理,支持限流、鉴权、监控等功能,提升微服务架构稳定性与可维护性。(239字)
|
3月前
|
存储 NoSQL 关系型数据库
MongoDB索引知识
MongoDB索引通过B树结构提升查询效率,避免全表扫描。支持单字段、复合、地理空间、文本及哈希索引,适用于等值、范围、排序及全文搜索,显著提升大数据量下的查询性能。

热门文章

最新文章