随笔分类 - 2设计札记
探索软件系统的设计方法与实践。
摘要:性能优化思路 性能优化的实质 去除大量重复、不必要的操作。 并发、批量操作。 重复操作: 重复创建同一个对象; 以相同参数重复调用同一个接口; 重复上传或下载同一个文件; 重复编译正则表达式; 重复获取一个规则集或数据集; 重复走一个流程。 性能优化的思路 过滤去重:除去不需要处理的,适合小成本 缓
阅读全文
摘要:Think Deeper, Design Better.
阅读全文
摘要:可扩展性,本质上就是预测变化的方向并做好预留设计。
阅读全文
摘要:架构模式是系统组件及组件交互的模式,决定了处理数据和领域对象的全局控制结构。
阅读全文
摘要:流程千变万化。掌握基本的流程模式和复杂流程的构建方法,熟悉一些注意事项,辅以并发、异步、同步、消息中间件通信,没有什么流程是搞不定的。
阅读全文
摘要:本文给出一个测量链路耗时的工具。对一个系统的量化工作越深入,掌握的关键数字越多,意味着对这个系统的认识也就越深入。
阅读全文
摘要:软件是逻辑的层次化组合叠加,是逻辑的结构化艺术。你看到的不再只是代码和字符,而是千姿百态的结构。这些结构既在程序里,也在人类社会中。
阅读全文
摘要:系统可扩展性是指能够低成本、高质量地在现有系统中添加新功能和优化现有功能。 可扩展通常涉及到全局结构的设计。
阅读全文
摘要:技艺精进之路,永无止境。建立系统整体观,运用架构的思维,从系统整体和模块角度去思考系统构建,能够让程序员看得更远,进阶速度更快。
阅读全文
摘要:复用与解耦,是推动软件工程技术发展的两大思想溯源。本文对组件间的耦合和解耦方式做个小小的梳理,以备后用。
阅读全文
摘要:一个靠谱的技术方案文档就是: 针对一个具体的需求或优化,所涉及的问题背景及业务价值、技术目标、领域概念及精确定义、总体思路、现有方案的做法及利弊、新方案的利弊分析、最终方案决策/考量因素/论据支撑,无论大点小点,都写得明明白白清清楚楚,重点和核心点做了充分的讨论,非重点和非核心点让人觉得自己想的都提到了。
阅读全文
摘要:培养良好的抽象设计思维,对于程序员技术能力的进阶是非常重要的。它能从表面的业务问题,看到深层的技术问题;通过技术问题的求解,来穿透解决一类的业务问题。问题是否具有挑战性,取决于你如何去看待它。
阅读全文
摘要:本文主要给出了一个事件处理流程的简易业务编排框架,适用于具有相似的模板流程的事件处理。设计一个小型框架,能够处理一类相似业务,更能体现性价比。
阅读全文
摘要:服务解耦通常采用消息系统。本文总结消息系统相关的思想、技术及知识。
阅读全文
摘要:熔断机制是分布式的微服务体系中必不可少的技术手段,用来防止服务雪崩。本文总结了熔断机制的实现原理及 Hystrix 的使用和基本的源码解析。
阅读全文