入门运行Soul

简介: 入门运行Soul

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为下面

📎schema.sql

3.启动网关boostrap

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

目录
相关文章
|
缓存 架构师 算法
【Conan 入门教程 】深入理解 Conan 2.X 中的 self.source_folder
【Conan 入门教程 】深入理解 Conan 2.X 中的 self.source_folder
455 1
|
达摩院 供应链
「达摩院MindOpt」用于多目标规划(加权和法)
多目标规划(Multi-objective programming)是指在一个优化问题中需要同时考虑多个目标函数的优化。在多目标规划问题中,目标函数之间通常是互相冲突的,即在优化一个目标函数的过程中,另一个或几个目标函数可能会受到影响。因此,多目标规划问题的目标是找到一个解x,使得在满足约束的前提下,所有目标函数达到一个相对满意的折中。
「达摩院MindOpt」用于多目标规划(加权和法)
|
6月前
|
人工智能 JSON 数据挖掘
大模型应用开发中MCP与Function Call的关系与区别
MCP与Function Call是大模型应用中的关键技术。前者是跨模型的通用协议,实现多工具标准化连接;后者是模型调用外部功能的机制。MCP如“桥梁”,支持多系统协同;Function Call似“工具手”,执行具体任务。二者互补,推动AI应用向更高效、开放的方向发展。
|
5月前
|
监控 安全 数据可视化
人员定位软件系统从核心架构、关键功能、主流技术、典型应用与选型要点详解
人员定位软件系统以定位引擎与管理平台为核心,融合终端与网络,实现人员实时定位、安全管控及智能管理,适用于工厂、矿山、工地等场景,支持高精度定位、电子围栏、应急报警、考勤管理,并可集成视频监控等系统,提升安全与运营效率。如果您想进一步了解人员定位的案例,欢迎关注、评论留言~也可搜索lbs智能定位。
|
存储 SQL 监控
|
6月前
|
人工智能 搜索推荐
患者随访管理系统(源码),涵盖档案管理、随访计划制定、多渠道执行
患者随访管理系统利用信息技术实现患者全流程随访,涵盖档案管理、随访计划制定、多渠道执行(短信、微信、AI语音等)、健康评估及统计分析。支持个性化随访路径与问卷定制,提升随访效率与医疗服务质量。
285 6
|
人工智能 开发框架 自然语言处理
【图文详解】探秘 Prompt 工程:AI 交互的关键密码
【图文详解】探秘 Prompt 工程:AI 交互的关键密码
|
前端开发 JavaScript
如何在 CSS3 动画中添加缓动效果?
在上述示例中,页面中有一个蓝色的方块元素和几个按钮,点击不同的按钮可以为方块的移动动画设置不同的缓动效果。通过JavaScript获取方块元素,根据用户点击按钮传递的缓动函数值,修改方块的`transitionTimingFunction`属性,从而实现动态切换缓动效果的功能。每次点击按钮后,方块会向右移动100px,并在1秒后回到初始位置,以便用户观察不同缓动效果下的动画表现。
521 57
|
缓存 监控 测试技术
全网最全压测指南!教你如何测试和优化系统极限性能
大家好,我是小米。本文将介绍如何在实际项目中进行性能压测和优化,包括单台服务器和集群压测、使用JMeter、监控CPU和内存使用率、优化Tomcat和数据库配置等方面的内容,帮助你在高并发场景下提升系统性能。希望这些实战经验能助你一臂之力!
1594 3