首页
学习
活动
专区
圈层
工具
发布

推荐一款拥有31.4k Star的后台管理系统!

,本地缓存提升性能 支持 SaaS 多租户系统,可自定义每个租户的权限,提供透明化的多租户底层封装 工作流使用 Flowable,支持动态表单、在线设计流程、会签 / 或签、多种任务分配方式 高效率开发...,支持 SaaS 场景下的多租户功能 租户套餐 配置租户套餐,自定每个租户的菜单、操作、按钮的权限 字典管理 对系统中经常使用的一些较为固定的数据进行维护 短信管理 短信渠道、短息模板、短信日志,...应用信息 配置商户的应用信息,对接支付宝、微信等多个支付渠道 支付订单 查看用户发起的支付宝、微信等的【支付】订单 退款订单 查看用户发起的支付宝、微信等的【退款】订单 ps:核心功能已经实现,...基础设施 功能 描述 代码生成 前后端代码的生成(Java、Vue、SQL、单元测试),支持 CRUD 下载 系统接口 基于 Swagger 自动生成相关的 RESTful API 接口文档 数据库文档...API 日志 包括 RESTful API 访问日志、异常日志两部分,方便排查 API 相关的问题 MySQL 监控 监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈 Redis 监控

2.4K20

efcore使用ShardingCore实现分表分库下的多租户

ShardingCore的分库功能实现多租户呢,我的回答是可以的,但是需要针对分库对象进行路由的编写,相当于我一个项目需要实现多租户所有的表都需要实现分库才可以,那么这个在实际应用中将是不切实际的,所以虽然分库可以用来进行多租户但是一般没人会真的这样操作...多配置支持,可以针对每个租户或者这个配置进行单独的分表分库读写分离的链接配置 多数据库配置,支持多配置下每个配置都可以拥有自己的数据库来进行分表分库读写分离 动态多配置,支持动态添加多配置(目前不支持动态删减多配置...公共用户存储 首先在我还没有创建租户的时候是不存在数据库的所以我的数据自然而然不会存在当前租户下,这边我们采用的是存储到其他数据库中,假设我们使用一个公共的数据库作为用户系统....添加租户中间件 添加租户中间件,在系统中如果使用多配置那么就必须要指定本次创建的dbcontext使用的是哪个配置 public class TenantSelectMiddleware...之前并没有一款非常好用的分片组件在.net上,并且拥有非常完美的orm作为支持,基本上重来没有一个框架说多租户模式是可以选择数据库的,之前市面上所有的多租户你只能选择一种数据库,目前.Net在开源的状态下我相信会有越来越好的组件框架诞生

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    这些年我对微服务的理解

    同时,正如我之前写的一篇文章(关于分布式系统数据一致性的那些事),现实生活中也不可能有一个大而全的系统可以cover所以的场景,并且用事务保证强一致性。...原则上,对于微服务系统,应该只有API是不同微服务之间的contract,如果采用共享数据库,就又引入了另外一个层面的contract,不容易维护,当有其他团队的人改了数据库,容易导致意想不到的错。...其次,一个SaaS系统往往需要考虑多租户,一种多租户实现策略就是:每个租户拥有自己的独立数据库,不同租户的数据就被存在各自独立的数据库,这样又是一个层面的分库。...另外,有时候通过分库仍然会存在一些表数据量太大的问题,比如订单表,当数据量太大的时候,其读写操作的性能往往会急剧下降,这时候就需要做分表了。...其实,个人觉得分库某些时候也是一种分表,除此之外,还有一些其它策略,比如说,我们可以把比较老的数据存到另外一张表去,就像一些电商平台,用户默认只能看最近三个月的订单等。

    86010

    PHP-Casbin:一个让开发者不再为权限控制 “重复造轮子” 的工具

    如果你也曾在项目里写过if($role == 'admin')的硬编码,或是为多租户权限隔离挠破头,那这篇文章,或许能给你一个更优雅的答案。...更致命的是,业务迭代中暴露的许多问题:1....权限模型单一:多场景需求无法满足电商项目里,除了 “谁能看订单” 的RBAC需求,还有 “用户只能改自己的资料”(ACL)、“VIP 用户能访问会员接口”(属性权限)、“API 接口按 HTTP 方法控制...RBAC with Domains多租户 / 多域名隔离 “租户 A 的管理员不能操作租户 B 的数据” ABAC 基于属性的动态权限...“用户只能查看自己创建的、未过期的订单” RESTful API 接口权限控制 “GET /api/orders 允许,POST /api

    44210

    国外24款云ERP 软件点评推荐 | 榜单

    ;架构包括 SaaS 多租户 SOA;数据库平台为 Cloud-Based (Saas)、普遍兼容 w/全部数据库平台;支持所有操作系统;属于 SaaS 软件。...MS Access, IBM UniData/UniVerse, 普遍兼容 w/全部数据库平台, Quickbooks, Salesforce, SalesForce 云端多租户 SAAS;支持的操作系统有...2、物料管理 分销商多地库存、先进运输、容器管理、订单承诺、实时系统、物料退回授权。...美元;财务模式为订阅;用户数量要求为最低 50 人,不设上限;支持多站点及跨国服务;架构为多租户 SaaS;数据库平台为 Cloud-Based (Saas)、普遍兼容 w/全部数据库平台;支持所有操作系统...数据库平台为 Cloud-Based (Saas)、 普遍兼容 w/全部数据库平台, SalesForce 云端多租户 SAAS;支持的操作系统有 Mac OS、Linux、Windows、Unix、Solaris

    6.7K100

    别等到系统炸了才明白:架构决策就是一场残酷的优先级游戏

    更扎心的是:系统上线后日订单才200多,那些"高大上"的架构根本用不上。我像个小丑,搭了个航空母舰去打蚊子。那一刻我明白了:架构不是技术拼图,是针对"此刻最疼的地方"做减痛手术。...定位痛点(花了1周):问题1:报表查询拖垮主库原因:所有查询打在主库,没有读写分离解决:加1个从库+Redis缓存问题2:大客户的数据把小客户挤爆原因:没有租户隔离,共用一个线程池解决:按租户分配资源配额问题...重新排序后的架构:新的优先级:优先级排序:多租户隔离:大客户独立部署,小客户共享资源数据安全:租户数据物理隔离,审计日志完备弹性扩展:按租户动态分配资源成本优化:小客户密度部署,大客户按需付费技术选型:...数据库分片(按租户ID分库分表)资源隔离(K8sNamespace+ResourceQuota)限流熔断(按租户维度限流)独立部署(VIP客户独立集群)血泪教训:SaaS最怕的不是技术问题,而是一个大客户把所有小客户干翻...结果:6个月过去,连员工管理都没做完投资人不给钱了,公司倒闭教训:MVP阶段别谈中台,先把基础功能跑通。陷阱3:忽视多租户隔离案例:某公司所有客户共享一个数据库。

    41133

    架构师不是画图艺术家,而是技术风险的“翻译官”

    业务方的需求很简单:"我们需要一个能支持多租户的订单管理系统。"如果是三年前的老李,会直接开始设计数据库Schema、规划微服务边界。...但现在的老李会先问:"你们说的多租户,是按客户隔离,还是按业务线隔离?数据能不能跨租户查询?租户之间的数据安全边界在哪?"这一问,业务方愣住了。...,老李会设计一套完全隔离的多租户架构,开发周期6个月,结果上线后发现根本不符合业务预期。...错误翻译正确翻译业务影响物理隔离的多租户架构逻辑隔离+品牌标识的单体架构开发周期从6个月降到2个月完全独立的数据库实例共享数据库+租户ID过滤运维成本降低70%微服务拆分边界混乱按业务能力聚合服务接口调用链从...API减少50%的网络开销数据一致性要求全部用分布式事务区分强弱一致性,合理使用最终一致性可用性提升到99.9%多租户隔离每个租户独立部署共享实例+数据逻辑隔离运维成本降低80%性能瓶颈盲目引入缓存中间件优化

    50064

    谈谈怎么做服务隔离

    如图所示 一个请求过来,占用支付服务中的Tomcat的一个线程。然后,该线程去顺序调用订单服务和库存服务!那么,一旦库存服务出问题了,这个Tomcat的线程就一直卡在那,无法返回!...方式一:每个租户有独立的服务和独立的数据库 方式二:每个租户有共享的服务和独立的数据库 方式三:每个租户有共享的服务和共享的数据库 下面开始逐个说明 方式一 方式一:每个租户有独立的服务和独立的数据库!...我以国内流行的hibernate和mybatis来进行说明! (1)hibernate方式 在4.0版本hibenate开始支持多租户架构,即对不同租户使用独立数据库!...用户服务根据tenant_id确定操作数据库中的哪一行记录! 老规矩,和你们说一下在ORM中难点在哪!以mybatis为例,所有的sql上都要加一句AND t.tenant_id = ?...OK,介绍你一个插件叫mybatis plus可以实现这种多租户的更改,可以动态的解析出sql,增加上条件!

    1K20

    第2章 SaaS-HRM- 数据库设计

    多租户SaaS平台的数据库方案 1.1....1.3 多租户的数据库方案分析 目前基于多租户的数据库设计方案通常有如下三种: 独立数据库 共享数据库、独立 Schema 共享数据库、共享数据表 1.3.1 独立数据库 独立数据库:每个租户一个数据库...1.3.3共享数据库、共享数据表 共享数据库、共享数据表:即租户共享同一个Database,同一套数据库表(所有租户的数据都存放在一个数据库 的同一套表中)。...在表中增加租户ID等租户标志字段,表明该记录是属于哪个租户的。 优点:所有租户使用同一套数据库,所以成本低廉。...在上图所示的情况中,同一个订单中可能包含不同的产品,因此主键必须是“订单号”和“产品号”联合组成, 但可以发现,产品数量、产品折扣、产品价格与“订单号”和“产品号”都相关,但是订单金额和订单时间仅与“

    1.6K20

    写给供应链产品经理:浅谈订单系统的设计

    02 订单系统架构 一般来说,电商平台有两大类业务:三方电商平台和自营平台。三方平台指的是在天猫、京东等平台上开的电商店铺,自有平台是企业自行搭建的商城,和一些对外的sdk、API等渠道。...需要适配的信息包括商品、地址、订单状态、物流公司等。 ——这个思路可以参考此前关于多租户的设计思路。...实战复盘:2B产品的多租户架构设计 2、订单履约系统的下游是仓储路由中心,用以与各个仓库系统和门店新零售系统进行交互,将订单路由分发至目标库房进行生产,同时将目标库房的发货信息收集并回传至订单履约中心。...所以,在退货单、退款单的设计上务必保持清醒,将退货单、退款单与订单库彼此独立又相辅相成是一种更为合理的设计。...3.商品信息:所有需要合并的子单SKU及数量进行汇总 4.促销信息:将所有子单促销明细集中至父单中 物流IT圈 泛物流行业IT知识分享传播、从业人士互帮互助,覆盖快递快运/互联网物流平台

    5K105

    用Java构建高效SaaS架构:核心设计与实践指南

    一、SaaS架构的核心设计原则 多租户隔离 数据隔离策略:独立数据库(最高隔离)、共享数据库独立Schema(平衡方案)、共享表(经济型) 租户标识注入:通过ThreadLocal或Spring Interceptor...、订单库、产品库 水平分表:ShardingSphere实现按月分表(order_202307) 读写分离:AbstractRoutingDataSource动态路由主从库 六、持续交付演进路径 渐进式交付流水线...text Copy Code 代码提交 -> 自动化测试(含多租户测试) -> 金丝雀发布(5%流量验证) -> 全量部署 -> 功能开关控制新特性 SaaS监控体系 租户健康度看板:API成功率、响应时间...、资源用量 计费异常预警:突增的API调用次数告警 容量规划预测:基于历史数据的线性回归预测 七、典型案例:电商SaaS系统 某跨境电商平台采用Java SaaS架构后实现: 租户隔离:支持500+独立商家的数据隔离...延伸阅读建议: 《Spring Microservices in Action》中多租户实现章节 AWS SaaS Factory最佳实践白皮书 阿里云SaaS加速器技术架构解析 (注:本文代码示例需要根据实际框架版本进行调整

    1.2K10

    一文搞懂“交易核心”:交易、订单、账单、支付

    多模式并存:由于业务类型、流程安排和处理方式的不同,交易核心存在多种交易模式,这是交易核心拓展和灵活应对不同业务需求的关键空间。...也就是平台的佣金按正向分账的比例逆向退回一部分。具体来说,平台分账退回4元,待分账给商家的90元中,逆向退回36元。 方式二:平台佣金不动,从待分账给商家的待结算金额里全额逆向退回40元。...比如租房子的场景中,租户支付了9000元,其中包括3000元中介费、3000元押金和3000元房租。如果租户住了半个月后不住了,由于这三个费用的性质不同,逆向处理时就不会按比例退钱。...在这个过程中,这些独立系统之间的协同变得至关重要,因为每一次交易都需要所有系统的共同参与。这种协同关系和处理流程,其实就是最原始的那个“交易系统”的核心所在。...因此,这个过程中的所有业务都可以归属于交易系统,也都有可能从交易系统中独立出去。支付系统,就是其中独立出来的一部分。

    4.4K33

    异构系统才是企业架构的雨林法则

    雨林的三层结构与企业系统的对应老李的观点很明确:乔木(核心系统):用Java/C#这种稳定技术,10年不动摇灌木(中台服务):Go/Rust追求性能,Python做算法,各取所长苔藓(边缘应用):Node.js...SaaS多租户的真实困境老李最近在做多租户改造,遇到的坑能写本书:租户A(零售企业):要求订单系统3秒内响应,数据库在阿里云租户B(制造业):BOM物料清单层级深达15层,MySQL扛不住要上图数据库租户...C(金融行业):必须私有化部署,还得兼容信创环境"用一套代码服务所有租户"——这是SaaS最大的谎言。...3.1API网关:雨林的树冠层所有系统对外暴露的都是RESTAPI,但背后的实现各不相同:网关的三大职责(老李总结的方法论):职责具体实现解决的痛点协议转换REST→gRPC→SOAP对接遗留系统无需改造客户端鉴权统一...接口协议的三层标准老李团队现在所有新项目都遵循这套规范:协议分层思维导图:实践中的痛点与方案:痛点场景传统做法老李的方案效果前端要字段,后端不给前端群里@后端,等半天OpenAPI自动生成Mock数据前后端并行开发接口文档和代码不一致文档过期

    48351

    SaaS|架构与背后的技术思考

    也就是通过存储在系统态的元数据表中的元数据记录作为虚拟用户的数据库结构。 三、元数据驱动的多租户整体架构 我们先来大概了解下元数据驱动的多租户的整体架构,整体架构大概分为 5 个逻辑层次: 1....(1)普通多租户 SaaS 数据架构方案示例(仅做示例) 多租户基本思路:每个租户一个数据库,提供数据库级别的租户数据隔离,平台提供标准应用功能模型,用户可以在各自数据库内定义以及修改各自的定义模型,所有模型采用数据库物理表...不同的租户通过路由到不同的数据库来实现隔离。 域模型样例采用大家都熟悉的最小集的订单模型实现,包含商品、用户、订单和订单详情表。...6、元数据驱动的多租户数据架构示例 同样采用普通多租户 SaaS 数据架构方案中相同的域模型和示例数据作为参照进行说明,只不过在这里域模型不再对应到数据库的物理模型,而是对应到元数据所定义的虚拟数据库的逻辑模型...在元数据驱动的数据架构中,所有的 DDL 语言操作对应的使元数据层的元数据的记录的更新,不涉及数据库物理结构的更新,不会造成变更期间的数据库物理结构耗时调整造成的不可用,同时系统平台提供了一个高效的机制来减少对平台多租户应用总体性能影响

    4.1K30

    元数据驱动的 SaaS 架构与背后的技术思考

    也就是通过存储在系统态的元数据表中的元数据记录作为虚拟用户的数据库结构。 三、元数据驱动的多租户整体架构 我们先来大概了解下元数据驱动的多租户的整体架构,整体架构大概分为 5 个逻辑层次: 1....(1)普通多租户 SaaS 数据架构方案示例(仅做示例) 多租户基本思路:每个租户一个数据库,提供数据库级别的租户数据隔离,平台提供标准应用功能模型,用户可以在各自数据库内定义以及修改各自的定义模型,所有模型采用数据库物理表...不同的租户通过路由到不同的数据库来实现隔离。 域模型样例采用大家都熟悉的最小集的订单模型实现,包含商品、用户、订单和订单详情表。...6、元数据驱动的多租户数据架构示例 同样采用普通多租户 SaaS 数据架构方案中相同的域模型和示例数据作为参照进行说明,只不过在这里域模型不再对应到数据库的物理模型,而是对应到元数据所定义的虚拟数据库的逻辑模型...在元数据驱动的数据架构中,所有的 DDL 语言操作对应的使元数据层的元数据的记录的更新,不涉及数据库物理结构的更新,不会造成变更期间的数据库物理结构耗时调整造成的不可用,同时系统平台提供了一个高效的机制来减少对平台多租户应用总体性能影响

    4.5K21

    「4+1视图」学习与理解

    最近在调研「多租户」实现方案时,看到简友「橘色对白」的3篇关于多租户架构的文章,其中一篇「以CRM系统为例,浅析初级SaaS架构的构建方法」,以「4+1视图」的形式,覆盖了分析、设计、开发、部署等阶段,...在分享之前,说说我的实践,通过场景视图、逻辑视图,分析出了「多租户」改造时,需要的功能列表。场景视图站在使用系统的角度,分析各个角色的用例。 逻辑视图站在业务对象的角度,表达了业务对象和对象间的关系。...(程序包、应用的统一框架、引用的类库、SDK和中间件等),并规范和约束开发环境的结构。...Api: 存放service的接口定义源文件; Action: 存放action的源文件和配置文件; Biz: 存放各模块的业务逻辑组件和DAO组件; Bundle: 存放JSP和HTML文件; deploy...理论很重要,更重要的是去实践,在实践的过程中,才能够真正理解理论中每个字的精华。 我理解的还很浅,先欠个账,后续项目开发过程中,完整应用「4+1视图」后,我在做个实践总结。

    4.6K120

    聊聊DaaS数据库即服务和微服务下数据库拆分

    数据库即服务包括如下关键能力: 多租户共享能力; 数据库实例的按需提供动态管理能力; 数据库服务的QoS/SLA指标自动监控与动态资源调配能力。...整体架构设计参考 对于DaaS服务层的设计,当前没有统一的标准。通过私有云建设实践可以看到多租户管理、SQL解析、路由、集群和负载均衡仍然是一个DaaS平台需要具备的基本功能。...一个具体的多租户DaaS平台架构可以参考下图: 数据库接口代理:实现统一的数据访问接口代理,业务组件或模块通过接口代理来访问底层的数据库服务。...多租户管理:可以实现在数据库实例和数据库Schema两个级别的多租户共享和管理功能。数据库层共享以数据库为基本的划分单元,即为每一个租户创建/分配一个数据库实例,共享存储和服务器。...Schema层共享以User/Schema为基本的划分单元,即数据库实例已经创建,在此基础上为每一个租户创建一个Schema,多租户之间共享存储、服务器、操作系统服务和数据库实例。

    42200

    CodeSpirit 框架核心亮点

    完善的多租户数据隔离和资源管理 核心特性 • 数据隔离: 基于TenantId的自动数据过滤 • ⚙️ 配置隔离: 租户特定的配置管理 • 资源隔离: 租户级别的资源限制 • 租户解析: 支持域名...跨服务通信: 用户服务发布事件,订单、权限、通知服务订阅处理 2. 异步解耦: 主流程快速返回,耗时操作异步处理 3. 事件溯源: 记录所有领域事件,支持重建系统状态和审计追溯 4....开箱即用 • 所有组件预配置 • 统一的使用方式 • 完善的文档 2. 分布式友好 • 支持多实例部署 • 数据一致性保证 • 高可用架构 3....事件驱动架构: RabbitMQ事件总线,租户感知机制 5. RBAC + ABAC: 混合权限模型 6. 多租户支持: 完善的数据隔离和资源管理 7....统一配置: 所有API项目使用相同的启动模式 4. 自动化注册: 服务自动扫描和注册,无需手动配置 5. 中间件插入点: 3个精确的扩展位置,灵活可控 6.

    22210

    SpringBoot默认配置经历的8次生死时速

    【致命陷阱】默认配置的三宗罪ToB系统的痛点分析:业务特征:ToB系统往往服务多租户,单个租户的突发流量就能压垮整个系统SaaS困境:共享资源池中,一个大客户的请求暴增,会影响所有小客户RESTAPI的特殊性...第二章:数据库连接池——资源枯竭的陷阱【事故回放】订单系统的假死2019年初,老李负责的订单系统突然出现"假死"现象——服务进程存活,但所有请求超时。...【致命陷阱】连接池配置的误区SaaS系统的特殊挑战:多租户隔离:每个租户可能触发大量子查询报表需求:BI分析类请求会长时间占用连接定时任务:批量数据处理与在线请求竞争资源【生存法则】连接池的精确计算老李的连接池配置方法论...【致命陷阱】无限增长的日志黑洞ToB系统的日志困境:多租户场景:每个租户的操作都记录日志,日志量呈指数增长审计需求:合规要求保留完整操作日志,但没有归档策略排查需求:开发期望详细日志,但生产环境会产生TB...黑客通过/actuator/env端点,直接获取了数据库密码、Redis密码、第三方API密钥。原因:为了方便监控,开发环境暴露了所有Actuator端点,部署时忘记修改配置。

    46332
    领券