本帖最后由 hrh 于 2023-7-22 20:29 编辑
工单也是有队列的,很正常,微软这样的大公司肯定有很多的工单得处理,像这种只能说是小问题,不属于啥大的安全漏洞或错误,队列肯定比较靠后,顶多算个增强功能. 再说有时一些问题并不是说不好改,而是流程难办,工单送到程序员手中,什么单元测试,集成测试,代码审查,万一改了下这个问题导致了啥重大安全漏洞或不兼容问题,谁付得起责任?这可不像普通人以为的,改下代码,能运行就直接能应用到生产环境的,代码审查,IT安全,IT测试都是开发时候的必要成本.更何况代码上线也是有迭代周期的.
举个例子,在最近一个敏捷开发的冲刺中,Azure DevOps工程师执行了一个代码升级,用受支持的Azure.ResourceManager.* NuGet包替换已弃用的Microsoft.Azure.Managment.*包,这导致了一个大的拉取请求,交换了旧包中的API调用和新包中的API调用,拼写错误就隐藏在这个拉取请求中,该错误将删除Azure SQL数据库的调用替换成删除托管数据库的Azure SQL Server的调用,由于错误的代码只在特定条件下运行,因此没能被现有测试覆盖.在将Sprint 222部署到Ring 0(微软的内部Azure DevOps 组织)时,由于其中不存在任何快照数据库,所以没有执行删除作业.几天后,软件更改被部署到南巴西的客户环境Ring 1.该环境中存在能够触发错误的快照数据库,导致后台作业删除了整个Azure SQL Server和所有17个生产数据库.
因此不能总是站在用户和程序员的角度来吐槽流程低效,没有看到一个疏忽给整个系统带来的崩溃.
|