当前位置: 首页 > news >正文

【学习系列】SAP RAP 6:行为定义-Concurrency Control

前言

前一篇中介绍了行为定义中编号Numbering的使用方式,本篇介绍下RAP行为定义中的并发控制Concurrency Control,并发控制可以防止不同用户同时访问数据库并互相干扰,确保只有在保证数据一致性的情况下才能更改数据,并发控制有两种方式:乐观并发控制悲观并发控制


正文

乐观并发控制

乐观控制并发依赖于ETag字段,即数据每一次更改都会刷新指定的ETag字段,并且乐观并发控制仅在通过OData消费业务对象时才有意义,所以ETag也称为OData ETag。

下面说明了对同一实例进行操作的两个不同客户的ETag检查:

如上图所示,假定两个用户同时要对一个订单进行更改,那么用户1和用户2都需要先get到当前的ETag,假定用户1先执行了在upate请求,将ETag附加在请求header中一并传给后端,后端在判断本次传进来的ETag是不是跟上一次一致,如果一致则更改成功,并将ETag设置为一个新的值;然后用户2晚一点也发起了update请求,这次后端对比ETag时,发现已经和传入的ETag不一致了,那么系统就会阻止本次修改请求,避免覆盖用户1更改的内容。

在上面SAP官方的运行示例图中可以看到,读取ETag的行为是通过READ方法读取的,在managed场景中,这是由框架自动完成的,

http://www.dtcms.com/a/494443.html

相关文章:

  • docker 运行容器限制 CPU
  • Python自动化从入门到实战(24)如何高效的备份mysql数据库,数据备份datadir目录直接复制可行吗?一篇给小白的完全指南
  • 个人可以备案网站的内容国外直播平台tiktok
  • C语言也能干大事网站开发pdf企业网站管理系统多站多语言版
  • 清理页面缓存
  • YD925输出5V,高性价比的非隔离电源方案详细介绍
  • 零基础新手小白快速了解掌握服务集群与自动化运维(十二)Python编程之常用模块
  • SQL注入完全攻略:从手工注入到自动化工具的渗透实战
  • 做网站的价格是多少临沂网站域名
  • 深入理解 HTML `<label>` 的 `for` 属性:提升表单可访问性与用户体验
  • 大型语言模型(LLM)文本中提取结构化信息:LangExtract(一)
  • Flask应用改用Waitress运行
  • html css js网页制作成品——HTML+CSS辣条俱乐部网页设计(5页)附源码
  • Spring Boot 3零基础教程,Spring Boot WEB 开发 自动配置原理,笔记24
  • 大数据Spark(六十九):Transformation转换算子intersection和subtract使用案例
  • 郑州做网站狼牙有关网站建设文章
  • 【前端高频面试题】深入浏览器渲染原理:从输入 URL 到页面绘制的完整流程解析
  • 宿州网站建设贰聚思诚信wordpress菜单不兼容
  • C语言——深入解析C语言指针:从基础到实践从入门到精通(四)
  • Cursor 科技感的登录页面提示词
  • Ubuntu 24.04环境下的挂起转休眠
  • 【从0开始学习Java | 第21篇】网络编程综合练习
  • OpenCL初级教程
  • 【Spring AI】基于 sse 实现 MCP Server
  • vue使用限制仅允许上传 Excel 文件
  • dataease开发环境搭建
  • 一个网站开发周期wordpress导航条
  • 湖南城乡建设厅网站夜蝶直播app
  • list,咕咕咕!
  • iOS 混淆实战,多工具组合完成 IPA 混淆与加固(源码 + 成品 + 运维一体化方案)