Soul数据库设计

简介: 该插件采用数据库设计,存储插件、选择器、规则及其匹配条件的配置数据。通过UML类图展示表结构,核心为plugin、selector、rule三大模块,支持多层级关联:插件→选择器→规则→匹配条件,各规则处理逻辑以JSON存于handle字段,适用于Dubbo、SpringCloud等协议。
  • 插件采用数据库设计,来存储插件,选择器,规则配置数据,以及对应关系。
  • 数据库表UML类图:

  • 设计详解:
  • 一个插件对应多个选择器,一个选择器对应多个规则。
  • 一个选择器对应多个匹配条件,一个规则对应多个匹配条件。
  • 每个规则在对应插件下,不同的处理表现为handle字段,这个一个不同处理的json字符串。具体的可以在admin使用过程中进行查看。

说明:

  • meta_data对dubbo泛化调用使用,每条记录对应一个dubbo接口的方法,http协议不会保存,而springcloud协议,只会存储一条数据, path为 :/contextPath/**
  • plugin:存储当前支持插件,我们对应配置的插件相关参数,就会更新这样表

  • rule:插件管理中,我们配置的具体规则。实际在这里我们也可以看出Soul的三大核心:plugin,rule,selector

  • rule_condition:rule表中配置的,对应的具体匹配规则
  • selector:规则表
  • selector_condition:规则条件表

实际上,上面这张图,就对应上述四个表中的

selector-选择器列表,选择器里面的配置对应-selector_condition

rule-选择器规则列表,规则列表中的配置对应-rule_condition

相关文章
|
存储 弹性计算 安全
阿里云数字新基建系列——混合云架构(第2章-1)
阿里云经过12年的发展,以IaaS、PaaS分层为标准的云计算基础技术已经非常成熟,同时围绕这两层的泛网络、泛存储、泛安全等对云计算攸关的技术也起着关键支撑作用。当然,阿里云的核心技术有很多,包括但不限于数据库、大数据、IoT、AI等技术。限于篇幅,本章不会涉及这些内容,后续章节主要是介绍IaaS和PaaS层及相关的泛网络、泛存储、泛安全技术原理。
阿里云数字新基建系列——混合云架构(第2章-1)
|
4月前
|
人工智能 数据可视化 JavaScript
剪视频不用再开 PR 的 AI 工作流
本文对比OpenClaw三种部署方式(本地、全托管、阿里云轻量自托管),重点推荐后者:兼顾7×24在线、数据自主、灵活扩展与开箱即用。结合真实视频剪辑场景,详解字幕生成、批量处理、竖屏裁切等高效AI功能,适合Vlog/知识类博主提效减负。
|
8月前
|
Arthas 监控 Java
下载安装
Arthas 是一款Java诊断工具,使用前需确保服务器已启动Java应用、安装JDK并可访问公网。通过下载 arthas-boot.jar 并启动,可连接目标Java进程进行实时监控与问题排查,支持多进程选择,操作简单高效。
下载安装
|
8月前
|
Arthas 存储 运维
记Arthas实现一次CPU排查与代码热更新
本文介绍如何使用Arthas排查Java应用CPU占用过高问题,通过thread、watch、jad等指令定位线程阻塞与异常代码,并实现无需重启的热更新修复,结合profile生成火焰图进行性能分析,提升线上问题处理效率。
记Arthas实现一次CPU排查与代码热更新
|
8月前
|
Arthas Java 测试技术
基础指令
Arthas 是一款Java诊断工具,支持查看线程信息(dashboard、thread)、反编译类(jad)、观测方法调用(watch)等。可通过命令查看最忙线程、阻塞线程、指定状态线程及方法入参出参,支持采样间隔设置,帮助快速定位性能问题。
基础指令
|
Go 开发工具
百炼-千问模型通过openai接口构建assistant 等 go语言
由于阿里百炼平台通义千问大模型没有完善的go语言兼容openapi示例,并且官方答复assistant是不兼容openapi sdk的。 实际使用中发现是能够支持的,所以自己写了一个demo test示例,给大家做一个参考。
|
存储 机器学习/深度学习 应用服务中间件
阿里云服务器架构解析:从X86到高性能计算、异构计算等不同架构性能、适用场景及选择参考
当我们准备选购阿里云服务器时,阿里云提供了X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等多种架构,每种架构都有其独特的特点和适用场景。本文将详细解析这些架构的区别,探讨它们的主要特点和适用场景,并为用户提供选择云服务器架构的全面指南。
1392 18
|
存储 SQL 关系型数据库
深入探究InnoDB的MVCC快照机制
本文详细介绍了InnoDB存储引擎中的两种并发控制方法:MVCC(多版本并发控制)和LBCC(基于锁的并发控制)。MVCC通过记录版本信息和使用快照读取机制,实现了高并发下的读写操作,而LBCC则通过加锁机制控制并发访问。文章深入探讨了MVCC的工作原理,包括插入、删除、修改流程及查询过程中的快照读取机制。通过多个案例演示了不同隔离级别下MVCC的具体表现,并解释了事务ID的分配和管理方式。最后,对比了四种隔离级别的性能特点,帮助读者理解如何根据具体需求选择合适的隔离级别以优化数据库性能。
981 5
深入探究InnoDB的MVCC快照机制
|
移动开发 JavaScript 前端开发
【前端用法】html5实现地理位置定位(JS获取当前地理位置的方法)
【前端用法】html5实现地理位置定位(JS获取当前地理位置的方法)
888 0