随笔分类 - 方法论
设计、工作理念、思想、原则,方法论
摘要:
每个系统都包含一系列架构决策,定义了设计和实现的边界和限制,
架构设计文档的核心是以某种方式的选型决策,而开发团队可能不太清楚这个决策背后的假设和思考。
对于这些决策,由于我们缺少当时的上下文,只能盲目的接受和盲目的做出改变。
闲逛ThoughtWorks Radar偶然发现一个在17年和18年都被ADOPT(采用)的技术叫“ADR - Lightweight Architecture Decision Records”,轻量的架构决策记录,针对演进式架构而提出的一种架构文档管理方法。
阅读全文

摘要:
在上一篇文章《分布式系统的构建原则》中总结了分布式系统的几个原则,扩展性是其中非常重要的一个原则,而对于扩展性则是我们工程团队多年以来不懈的追求,所以,我们单独展开,写一写有关扩展性的内容。
在各种不同的领域中,深耕的组织和团队都不约而同的尝试、发现和总结软件架构模式,最后都相似的得出共同的软件架构特征,大家都希望系统更健壮、具有适应能力、更好的满足现代化的需求。
而这些特征其实背后无疑都指向一个共同的非常重要的实现原则,扩展性!
阅读全文

摘要:
什么是构建一个可维护和可扩展的系统的意义?
在早期,一个系统的形态,只是满足用户和服务器资源之间的通道,唯一要扩展和维护的是系统后面的资源,保证资源的可用和够用,而系统本身的压力并不大。
系统设计跟我们生活中大多数事情一样,都需要花时间提前规划,能够让我们的服务长时间在线。所以,我们了解和总结一些大型系统背后的思考和权衡,能够帮助我们在系统早期做出一些明智和靠谱的决策。
如今,开源组件已经成为构建一些企业系统的基石,伴随着行业的发展,最佳实践和围绕这些系统架构的指导原则也逐渐显现出来了,在什么时候该用什么样的技术,需要考虑到哪些方面,各路牛人早有撰文总结。
阅读全文
