入门运行Soul

简介: Soul 是基于 WebFlux 的高性能响应式 API 网关,支持 Dubbo、Spring Cloud、Spring Boot,具备异步、跨语言、插件化扩展、动态流量控制等特性,集成鉴权、限流、熔断等丰富插件,支持集群部署与灰度发布。

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 网关,具有异步、高性能、跨语言等特点。
支持各种语言,无缝集成到 Dubbo、Spring Cloud、Spring Boot 中。Soul 是极其少支持 Dubbo 的 API 网关,通过 Dubbo 泛化调用 实现。支持各种语言(http协议),支持 dubbo,springcloud协议。插件化设计思想,插件热插拔,易扩展。灵活的流量筛选,能满足各种流量控制。内置丰富的插件支持,鉴权,限流,熔断,防火墙等等。流量配置动态化,性能极高,网关消耗在 1~2ms。支持集群部署,支持 A/B Test, 蓝绿发布。
下载导入执行: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(11 KB)
启动网关boostrap理论上来说,admin启动成功后,直接启动boostrap模块就可以,不会报错,除非想更改配置文件中的数据同步方式,2.0之后的Soul支持WebSocket,Http长轮询,Zookeeper三种方式,默认使用 http 长轮询同步策略,可以做到秒级数据同步,如果刚好有其它类型服务,可以切换,官方建议使用WebSocket。

相关文章
|
7天前
|
消息中间件 人工智能 决策智能
AgentScope x RocketMQ:构建多智能体应用组合
AgentScope是阿里巴巴推出的开发者友好型多智能体框架,支持模块化、可定制的智能体应用开发。通过集成RocketMQ,实现高效、可靠的A2A通信,助力构建如“智能旅行助手”等复杂协作场景,提升开发效率与系统可扩展性。(238字)
|
7天前
|
SQL 运维 分布式计算
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS,提供健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,帮助用户全面掌握SQL使用情况,实现精细化管理与性能优化,提升日志分析效率与体验。
|
7天前
|
NoSQL Shell Redis
Redis集群伸缩,转移插槽失败
Redis集群出现节点配置不一致,提示slot 0处于importing状态。需登录对应实例,执行`cluster setslot 0 stable`命令,将异常slot状态恢复稳定,修复后方可进行 rebalance 操作。注意根据实际slot ID调整命令参数。
|
7天前
|
运维 Devops 开发工具
生产环境缺陷管理
git-poison基于go-git实现,通过“投毒-解毒”机制在多分支环境中精准追踪bug,自动化阻塞带未修复bug的发布,降低协同成本,避免漏修、漏发问题,提升发布安全性与效率。
|
7天前
|
XML JSON Java
什么是RESTful
RESTful是一种基于资源的API设计规范,主张用URI唯一标识资源,通过HTTP动词(GET、POST、PUT、DELETE)操作资源,实现统一、标准的接口行为。它解决了传统接口路径混乱、行为不一致的问题,具有结构清晰、易于理解与扩展的优势。
|
7天前
|
Linux 数据安全/隐私保护 虚拟化
虚拟机安装(CentOS7)
准备CentOS7镜像及VMware Workstation(可从百度云下载),使用虚拟机创建工具新建虚拟机,参考知乎教程完成安装。默认登录用户为root,密码自设。详情见链接。
|
7天前
|
SQL NoSQL 前端开发
大厂如何解决订单幂等问题
为保障分布式系统数据一致性,需实现接口幂等性。创建订单时,通过预生成唯一订单号,利用数据库主键唯一约束防止重复插入;支付场景中,结合Redis或数据库唯一索引标记请求处理状态,避免重复扣款。针对ABA问题,采用版本号机制,更新时校验并自增版本号,确保数据更新的正确性与一致性。
|
7天前
|
Java 测试技术 Linux
生产环境发布管理
本文介绍大型团队如何通过自动化部署平台实现多环境(dev/test/pre/prod)高效发布与运维,涵盖环境职责、CI/CD流程、分支管理、容器化部署及基于Skywalking的日志链路追踪,提升发布效率与系统稳定性。
|
7天前
|
存储 缓存 运维
一场FullGC故障排查
本文通过一次JDOS容器CPU告警排查,揭示了由Full GC引发的性能问题。通过对比机器与JVM监控,结合堆内存分析工具定位到大对象导致老年代频繁GC。进一步分析发现,Excel数据以List<Map>形式加载致内存膨胀,最终提出缓存优化与结构精简两种解决方案,并总结了线上CPU问题排查思路:重JVM监控、善用工具、精准定位代码根源。
|
7天前
|
存储 数据库
数据库设计三范式
数据库三范式简介:第一范式要求字段原子性,不可再分;第二范式在满足第一范式基础上,消除部分依赖,确保主键唯一确定非主键;第三范式消除传递依赖,避免非主键间相互决定。范式旨在减少数据冗余、提升一致性,但实际设计需结合业务需求灵活应用,不必生搬硬套。(238字)