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

电商核心业务 - 指南

电商核心业务 - 指南

电商核心业务总结:
需要的表包括订单主表、订单商品表、订单支付表、订单优惠表(这几张表与订单主表都是一对多的关系,它们的外键都是订单id)
1、订单重复问题,幂等性的问题(解决办法:生成全局唯一的订单id,在调用其他服务时将订单ID也一并传入)
生成ID需保证在高流量高并发分布式场景下订单ID全局唯一,并具有趋势递增、安全性的特点.所以需要供应一个生成ID的服务,在点击下单后进入订单页前,先调用生成ID的服务获取到ID后点击提交订单,才会生成订单。

订单aba问题:比如请求a把物流单号修改为123,之后请求B又修改为456,随后由于网络原因请求A重试把物流单号重新修改为123,看上去没有修改类似于这种障碍
(与之相对应,java的原子引用障碍)
解决方式:与java类似,可以增加版本号,每次修改服务都需要携带一个版本号,需要订单号和版本号同时满足才可以修改

总的来说, 对于创建订单的服务,能够通过预先生成订单号作为主键,利用数据库中主键唯一性特性,避免重复写入订单,实现创建订单服务的幂等性。对于更新订单的服务,许可经过一个版本号机制,即在每次更新数据之前校验版本号,以及在更新数据的同时自增版本号这样的方式来解决ABA问题,以确保更新订单服务的幂等性。

http://www.wxhsa.cn/company.asp?id=7755

相关文章:

  • 一言
  • ai
  • LlamaIndex 项目深度技术分析 - 详解
  • 深入解析:css消除图片下的白边
  • linux增加网卡ip地址
  • Python 包与环境管理简史:从混乱到优雅
  • qoj853 Flat Organization
  • shell命令中循环执行操作的命令
  • 2025年9月中国数据库排行榜:达梦挺进榜眼位,崖山首入前十强
  • 基于QEMU模拟器搭建Builtroot下的QT开发环境
  • vlan
  • windosw 配置arp绑定
  • 2024年最受欢迎的渗透测试工具盘点
  • Unity学习 5.6 FBX
  • SEERC 2022 题面简要翻译
  • 【稳定检索、线上线下参会、马理工主办】第十一届建筑、土木与水利工程国际学术会议(ICACHE 2025)
  • telnet安装与开启
  • 20250917NOIP#21
  • 又一个新项目完结,炸裂!
  • 阿里云防刷神器ESA搞活动免费领取
  • 报错TypeError: Unknown file extension .ts - broky
  • 抗 IgE 单克隆抗体联合变应原免疫治疗(AIT):过敏性疾病治疗的协同新策略
  • php怎么关闭数据库连接
  • 代码分析之污点分析 - 教程
  • 设计模式 7章
  • 磁盘存储简介-轮子
  • 洛谷 P1967 [NOIP 2013 提高组] 货车运输 题解
  • cherry-pick 合并曾今某一次提交
  • 向量数据库 FAISS、LanceDB 和 Milvus
  • ruoyi-vue自动生成代码