Bendi新闻
>
精简代码实战:核心系统缩减80%代码
精简代码实战:核心系统缩减80%代码
1月前
阿里妹导读
背景
“代码的阅读时间比写代码的时间多十倍以上。所以,让代码易于阅读至关重要。” --Robert C. Martin
方案
1. 决策难
Fowler、Bob大叔等人都在强调要重构、要优化系统代码。
但要是问他们:什么时候应该优化?
估计他们会答:任何时候。
问他们:优化能带来哪些好处?
2. 投入高
20世纪初,福特公司有一台电机出了问题,导致整个车间生产停转,大批内部工人、专家反复查看都无法找到原因。后来,公司请来了斯坦门茨。斯坦门茨仔细检查了电机,然后用粉笔在电机外壳画了一条线,对工作人员说:“打开电机,在记号处把里面的线圈减少16圈。”人们照办了,令人惊异的是,故障竟然排除了!生产立刻恢复了!福特公司经理问斯坦门茨要多少酬金,斯坦门茨说:“不多,只需要1万美元。”1万美元?就只简简单单画了一条线!斯坦门茨看大家迷惑不解,转身开了个清单:画一条线,1美元;知道在哪儿画线,9999美元。
3. 风险高
天启用例不能直接使用,需要人工修复流量、mock子调用、mock配置等。而这部分的复杂度极高,导致ROI极低,我们最终放弃了天启回归方案。进一步,引发了回归覆盖的挑战。
新系统,新的配置,需要专门验证。对于一个演进多年的系统,往往有大量的switch, diamond配置,如何高效的验证是一个难题。
新建的部署结构,重点关注高可用风险,性能、限流、单元化等。
| |
| |
由于灰度、压测、演练等各个保障手段,有已经有大量的文章专门介绍,不再具体展开。万象仿真是基于场景的E2E回归方案,场景背后是DB数据特征抽取;配置一致性检测,是一个繁锁和重复的过程,我们沉淀了镜铃平台;VIP已经是一个老朋友了,由于其能力在持续演进,跟文章中描述已经是面目全非了,计划“重构”文章中。
"任何值得追求的目标都会涉及风险。成功的关键是学会管理风险,而不是回避它。" --赫伯特·欧特尔
后记
微信扫码关注该文公众号作者
来源:阿里云开发者
相关新闻
趣图:系统重构后保留的无用代码在 IDE 中实现自然语言搜索代码:RAG 策略的设计与落地综述170篇「自监督学习」推荐算法,港大发布SSL4Rec:代码、资料库全面开源!减少10%的代码:自定义参数解析器真的很强大,你不来了解一下?LLM会写代码≠推理+规划!AAAI主席揭秘:代码数据质量太高|LeCun力赞剥离几百万行代码,复制核心算法去美国?TikTok 最新回应来了分析了 1.5 亿行代码发现:AI 编程助手降低代码质量分析了1.5亿行代码发现:AI编程助手降低代码质量Linus Torvalds 言辞激烈,怒怼谷歌内核贡献者:垃圾代码!Linus 开喷谷歌内核贡献者:你的代码是垃圾!网友:我们熟悉的 Linus 回来了Linus 新年首次发飙!怒怼谷歌内核贡献者:垃圾代码Linus言辞激烈,怒怼谷歌内核贡献者:垃圾代码!硅谷AI工程师内卷崩溃记:996写代码项目被砍,连续熬夜只为讨好投资人!Stability AI开源3B代码生成模型:可补全,还能DebugRedis 之父自曝用 AI 写代码,锐评:LLM 有望取代 99% 的程序员!英伟达新对话QA模型准确度超GPT-4,却遭吐槽:无权重代码意义不大Stability AI开年首个大模型:专写代码,支持18种编程语言,上下文100K,苹果笔记本离线就能跑对话蚂蚁李建国:当前AI写代码相当于L2.5,实现L3后替代50%人类编程阿里云:以后公司20%代码由通义灵码编写纯文本模型训出「视觉」表征!MIT最新研究:语言模型用代码就能作画Linus “温馨提示”:Intel Xe驱动代码严重缺乏测试速度秒杀GPT-4o!Mistral开源首个22B代码模型破记录,支持80+编程语言Rust 编写的 Zed 编辑器开源:约 27 万行代码、主打“高性能”Rust编写的Zed编辑器开源:约27万行代码、主打“高性能”