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

EDA事件驱动架构:Event Driven Architecture

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

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

BASE理论:

基本可用 Basically Available

软状态 Soft State

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

幂等性理论:

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

如何保障幂等性:

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

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

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

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

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

	查询:不需要保证幂等性
相关推荐
JMchen12311 小时前
现代Android图像处理管道:从CameraX到OpenGL的60fps实时滤镜架构
android·图像处理·架构·kotlin·android studio·opengl·camerax
Jing_jing_X14 小时前
CPU 架构:x86、x64、ARM 到底是什么?为什么程序不能通用?
arm开发·架构·cpu
qq_1777673716 小时前
React Native鸿蒙跨平台自定义复选框组件,通过样式数组实现选中/未选中状态的样式切换,使用链式调用替代样式数组,实现状态驱动的样式变化
javascript·react native·react.js·架构·ecmascript·harmonyos·媒体
小程故事多_8017 小时前
深度搜索Agent架构全解析:从入门到进阶,解锁复杂问题求解密码
人工智能·架构·aigc
●VON18 小时前
React Native for OpenHarmony:项目目录结构与跨平台构建流程详解
javascript·学习·react native·react.js·架构·跨平台·von
Gary董18 小时前
高并发的微服务架构如何设计
微服务·云原生·架构
ujainu18 小时前
Flutter + OpenHarmony 实战:《圆环跳跃》——完整游戏架构与视觉优化
flutter·游戏·架构·openharmony
爬山算法19 小时前
Hibernate(74)如何在CQRS架构中使用Hibernate?
java·架构·hibernate
香芋Yu20 小时前
【大模型教程——第二部分:Transformer架构揭秘】第2章:模型家族谱系:从编码器到解码器 (Model Architectures)
深度学习·架构·transformer
从此不归路21 小时前
Qt5 进阶【13】桌面 Qt 项目架构设计:从 MVC/MVVM 到模块划分
开发语言·c++·qt·架构·mvc