版本发布中的风险控制学不完

版本发布】这个名词,对于涉及软件行业的伙伴们都是很熟悉的,【版本发布】是产品交付和线上迭代的一个里程碑。

在互联网公司中,因为很多系统是直接面向C端用户的,对于系统是24小时不中断的。所以,版本的版本如果涉及到多个系统的影响,同时要上线好几个系统

那么怎么做到平滑切换,特别有些是涉及到版本更新前的旧数据和版本更新后的旧数据怎么兼容,怎么保证用户使用中无感知,还有更重要的时候怎么保证在

发布版本中出现灾难情况的风险控制。这些都是要我们做发布方案的时候要深入思考的。

这边直接拿真实产品迭代中的一个实践例子给大家描述讲解下,通过这个例子,让大家有个比较深入的理解。

项目的背景:

上面的图,总体描述了【库存可售量】在下单冻结,取消订单解冻,erp出入库的数据流的流程。然后因为历史原因,我们系统中的商品,有个属性叫【是否跟踪属性】,

这个属性到底是啥用处,这个是我们业务上的历史原因造成的,我这边简单解释下,比如商品10001,如果【是跟踪属性】,那么下单,取消订单的时候,是都需要操作

可售量的,商品10002,是【非跟踪属性】,那么下单,取消订单的时候,不需要操作可售量,所以下单的时候,如果同时选择商品10001,商品10002,那么调用库存

接口的时候,组成请求体json的时候,是不需要把商品10002组装进去请求的。到这边大家应该了解了【是否跟踪属性】的用意。但是这样的做法是有问题的,因为【非跟踪】

改成【跟踪】,需要把可售量重新计算,这就造成了逻辑的复杂性,而且在系统请求负载大的情况下,容易在重新计算可售量的时候,造成脏读,而到底可售量,冻结量

出错。

修改方案

无论【跟踪】还是【非跟踪】都调用库存接口,【跟踪】的商品可售量扣到0为止,【非跟踪】的商品可售量可以扣成负的。对于【非跟踪】的商品,erp这边可售量为0的时候,

仍然可以出库,销售出库的时候,无论【跟踪】还是【非跟踪】商品都是要释放冻结量的,因为下单的时候,都冻结了。

上述修改涉及的系统有【toc订单】,【tob订单】,【库存接口】,【erp库存系统】,【配单系统】(这里主要计算销售出库的冻结量)。所以如果整个方案上线,是需要

这么多系统全部上完,并且上线的时候,需要把【非跟踪】的商品重新初始化,因为原来【非跟踪】的商品的可售量是不实时计算的。而且上面涉及的系统都是比较核心的系统,

如果有问题,都不能是小问题。

首先思考下,订单对于,商品10001,商品10002,原来调用库存接口,只要传商品10001就可以,现在全部要传递,这就涉及订单的上线,但是订单是24小时候都是会有订单

THE END
1.商品下架啥意思商品下架该词一般用于网店,用于提示用户不要再下单购买此件商品,已经卖光了。在现实生活中的一些店铺里偶尔也会出现“此商品已经下架”,一般用于出问题的商品,以此提示用户商店对此商品做了处理,将不再对外销售。下架,是一个汉语词语,意思是典当期满。 更多精彩资讯请关注七彩丝,我们将持续为您更新最新资讯! 查看...http://m.qicaisi.com/bk-1078144.shtml
2.库存中心操作指引文档注意:直邮模式的货品不可以使用预售,仅保税bbc模式的商品支持下文中的预售模式 0.创建货品 1.货品备案 2.注册登陆账号 3.如何操作货品预约入库/提货出库 4.如何修改库存(分配库存到商品宝贝) 4.1场景: 4.2路径: 4.3 SKU/商品链接的编辑变更 4.4 重点备注: 5.已经在途的库存赶不及入库要预售如何申请 5.1场景: 5.2...https://school.jinritemai.com/doudian/web/article/aHNuKGpC9fH1
3.饿了么餐饮服务商平台(3)企业应用承载的是大型商户的整体解决方案,平台应用承载的是中小型商户的痛点需求,平台应用会以商品的形式面向全量商户出现在应用市场中,企业应用仅对授权商户展示; (4)目前,平台应用仅面向1万家以上商户服务规模的ISV开放申请。 Q:饿了么API中的地理位置经纬度坐标是什么坐标系? https://open.shop.ele.me/base/documents/faq
4.分布式详解一致性算法全局唯一ID分布式锁分布式事务...这时,我们就可以建一张去重表,并且把唯一标识作为唯一索引,在我们实现时,把创建支付单据和写入去去重表,放在一个事务中,如果重复创建,数据库会抛出唯一约束异常,操作就会回滚。 插入或更新 这种方法插入并且有唯一索引的情况,比如我们要关联商品品类,其中商品的ID和品类的ID可以构成唯一索引,并且在数据表中也增加了...https://developer.aliyun.com/article/1416839
1.高效有序商品流通新模式,最新清货群介绍家政服务摘要:最新的清货群作为一种高效、有序的商品流通新模式,致力于优化商品流通环节,提高销售效率。通过加入清货群,商家能够更快速地处理存货,减少库存积压,实现商品快速流通。该模式组织有序,确保商品流通的顺畅和高效,为商家和消费者带来更加便捷、高效的购物体验。 https://www.jiuzichankang.cn/post/29616.html
2.淘宝api商品详情返回值说明淘宝api商品详情返回值说明 淘宝API商品详情返回值提供了商品的详细信息,这些信息对于商家进行商品展示、库存管理、价格监控以及用户行为分析等工作至关重要。以下是对淘宝API商品详情返回值的详细说明: 一、请求状态与错误信息 status:表示请求的状态,0为成功,非0为失败。https://blog.itpub.net/70042344/viewspace-3050338/
3.学编程多看多动手系列:Haskell事件溯源模式实现购物篮这段Haskell代码实现了一个基于事件溯源(Event Sourcing)模式的购物篮系统。事件溯源是一种软件架构模式,其中系统的状态不是直接存储的,而是通过一系列不可变的事件(记录了系统状态的变化)来重建的。主要功能包括: 定义基本类型:定义了产品(Product)、价格(Price)和折扣(Discount)等基本类型。 https://blog.csdn.net/gzjimzhou/article/details/143923938
4.Java商品自动下架解决方案java商品超卖首先想到的解决办法就是通过事务来解决,先更新后查询,然后判断是否超库存,若发生超卖则抛出异常,通过spring事务回滚处理。但最后分析了这种方案的缺陷:spirng事务不能严格保证数据一致性和业务逻辑正确性,而且减库存的压力全部落在数据库身上,不能保证高并发。https://blog.51cto.com/u_16099343/7114915
5.2024年最新加密货币的行话术语大全币种百科区块链暗网不能够被常规的网络协议访问,只可使用非常规协议和端口以及可信节点进行连接的私有网络。 API 在数字货币交易中,API能够让用户和应用程序或服务数据进行即时沟通,从而自行操作交易、获取行情数据等。 阿尔法 常用于指软件开发的第一阶段内部测试的版本,含义与“开始”、“第一个”相近。 https://www.jb51.net/blockchain/931845.html
6.大数据常见面试问题汇总江阴雨辰互联2.15.7 哪个商品卖的好? 2.15.8 数据仓库每天跑多少张表,大概什么时候运行,运行多久? 2.15.9 哪张表数据量最大 2.15.10 哪张表最费时间,有没有优化 2.15.11 并发峰值多少?大概哪个时间点? 2.15.12 分析过最难的指标 2.15.13 数仓中使用的哪种文件存储格式 ...https://www.yc00.com/news/1698791689a880360.html
7.gpmall/PRDatmaster·qfmx/gpmall·GitHub共有7个状态来控制商品的上架流程分别是:刚创建、提交审核、审核通过、申请驳回、商品删除、上架、下架,只有处于已上架状态的产品,用户才可能看到商品,各个细节形成一个完整的闭环 二、交易管理 1. 全部订单 功能描述 查看所有的订单,并可以打印订单详情,查看订单具体内容,货到付款的订单可以设置为已经收款。 https://github.com/qfmx/gpmall/tree/master/PRD
8.MySQL三万字精华总结写在之前:不建议那种上来就是各种面试题罗列,然后背书式的去记忆,对技术的提升帮助很小,对正经面试也没什么帮助,有点东西的面试官深挖下就懵逼了。 个人建议把面试题看作是费曼学习法中的回顾、简化的环节,准http://it.sdmtkj.net/cbs/caodneg7-p-13353659
9.ES亿级商品索引拆分实战腾讯云开发者社区伴随政府采购业务的快速发展,政采云的商品数据量也在快速膨胀,其中由 ES 进行提供的商品检索服务压力,也越来越大。由于商品模型中基础商品和交易商品的定义,导致商品本身的量会相对一般的电商场景多出一倍。 商品模型简介 基础商品 真实的商品,拥有仓库,主图,属性等商品主体信息。 https://cloud.tencent.com/developer/article/2321886
10.《亿级流量网站架构核心技术》——读书笔记重试(等一会再试、尝试其他分组服务、尝试其他机房服务,重试算法可考虑使用如指数退避算法) 摘掉不存活节点(负载均衡/分布式缓存场景下) 托底数据(返回历史数据/静态数据/缓存数据/) 等待页或者错误页 第7章:回滚机制 1、回滚概念 当程序或数据出错时,将程序或数据恢复到最近的一个正确版本的行为。最常见的如事务回...https://maimai.cn/article/detail?fid=1314479668&efid=FAc2Rl0U8HrqVe_nhjXoZg
11.KingbaseEs事务支持DDL回滚吗?()环控专业大风机控制柜(软启动控制柜,变频控制柜)与电力专业双电源接口界定:大风机控制柜进线断路器上口三相固定螺丝为界,以上为电力专业负责,以下由环控专业负责,螺丝的紧固由环控专业负责,电力专业配合停、送电。https://www.shuashuati.com/ti/23084f7c535244d9a3e84389130a922fa1.html
12.MySql面经原子性(Atomicity):一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节,而且事务在执行过程中发生错误,会被回滚到事务开始前的状态,就像这个事务从来没有执行过一样,就好比买一件商品,购买成功时,则给商家付了钱,商品到手;购买失败时,则商品在商家手中,消费者的钱也没花出去。 https://www.jianshu.com/p/5244fc598cd0
13.微信,爆更!三?视频号商品可“先买后付” 这次更新后,视频号内商品可以先购买,收货后再付款。 不过这一功能有微信支付分的要求,如果微信支付分没有达标,无法使用这一功能。 四?个人名片显示视频号名称 有网友爆料,这次更新后如果你的好友有开通视频号功能,那么会在他的个人名片上显示视频号的名字以及认证信息。 https://m.jrj.com.cn/madapter/finance/2023/09/24131237902350.shtml