EDA事件驱动架构/BASE理论/幂等性理论

EDA事件驱动架构:Event Driven Architecture

消息组件:不仅仅是削峰填谷 而且可以做事件驱动架构

EDA驱动的特定:异步处理、跨平台/语言通信、应用解耦、可靠投递、最终一致性

BASE理论:

基本可用 Basically Available

软状态 Soft State

复制代码
最终一致性 Eventually Consisitent:缓存一致性  数据一致性

幂等性理论:

本来单机的操作结果双击了,导致调用了两次请求,数据一模一样。或者重试机制、补偿机制等也需要保证幂等

如何保障幂等性:

新增:比如账号注册:业务唯一约束

创建订单,只有创建的时候才生成订单号,每一次都是不用的订单号,唯一约束无法解决问题,这时候分布式锁+隐藏表单

更新:个人信息修改 乐观锁控制(version)

并发修改:分布式锁、DB锁(select * fron table for update)

复制代码
	删除:问题不大 业务唯一约束

	查询:不需要保证幂等性
相关推荐
六行神算API-天璇26 分钟前
架构思考:大模型作为医疗科研的“智能中间件”
人工智能·中间件·架构·数据挖掘·ar
济南壹软网络科技有限公司1 小时前
企业级盲盒系统:Java高并发架构在多元化抽奖电商中的设计与实践
java·架构·开源源码·盲盒源码·盲盒h5·盲盒app
鹏说大数据3 小时前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
一水鉴天3 小时前
整体设计 定稿 之26 重构和改造现有程序结构 之2 (codebuddy)
开发语言·人工智能·重构·架构
隐语SecretFlow3 小时前
【隐语Secreflow】如何配置 Kuscia 对请求进行 Path Rewrit
架构·开源
小二·3 小时前
MyBatis基础入门《十四》多租户架构实战:基于 MyBatis 实现 SaaS 系统的动态数据隔离
数据库·架构·mybatis
老前端的功夫4 小时前
Vue 3 vs Vue 2 深度解析:从架构革新到开发体验全面升级
前端·vue.js·架构
测试人社区-小明5 小时前
智能测试误报问题的深度解析与应对策略
人工智能·opencv·线性代数·微服务·矩阵·架构·数据挖掘
nbsaas-boot6 小时前
JWT 与 Session 的实用场景分析:从架构边界到工程落地
java·开发语言·架构