分布式架构设计的原则和定律
2018-04-16 12:05
447 查看
设计分布式系统的一些原则
在设计架构时,要以业务为基础,同时需要考虑时间,人员技术储备等一系列因素,不存在直接设计出来一个完美的架构。
先解决核心问题,再一步步解决项目中出现的痛点。一个满足业务需求的架构是根据业务演变来的,这是一个不断迭代的过程。
微服务架构设计的几大定律
康威定律
- 系统架构可以反映出公司的组织架构
复杂的系统设计离不开人与人的沟通,沟通成本的算法为人数*(人数-1)/2,人数越多,成本越高。沟通的问题,会影响到系统的开发效率和周期。
时间再多也不能把一件事情做完美
一个复杂的系统,无论人员技术水平多高,终究会有漏洞。 需求复杂情况下,先忽略一些细节,业务量大的情况下,先做核心内容,把能做好的做到完美,然后再持续集成。根据系统做团队的划分
还是为了解决沟通问题,团队越多,共同成本越高,尽量让一个团队内全栈,让团队自治,降低沟通成本。久合必分,分而治之
将一个大的系统在合适的实际进行拆分
墨菲定律
- 任何事情都没有表面看起来那么简单
- 所有事情都会比你预计的时间要长
- 可能出错的事情总会出错
- 如果你担心某种情况发生,那么它更有可能发生
二八定律
阅读更多各个行业都普遍存在二八定律,在设计系统时,应将有效的资源放到核心的环节。
相关文章推荐
- 从腾讯QQgame高性能服务器集群架构看“分而治之”与“自治”等分布式架构设计原则
- 从腾讯QQgame高性能服务器集群架构看“分而治之”与“自治”等分布式架构设计原则
- 从腾讯QQgame高性能服务器集群架构看“分而治之”与“自治”等分布式架构设计原则
- 架构 理论 设计原则 分布式 总结
- 从腾讯QQgame高性能服务器集群架构看“分而治之”与“自治”等分布式架构设计原则
- 从腾讯QQgame高性能服务器集群架构看“分而治之”与“自治”等分布式架构设计原则
- 从QQ游戏分布式架构设计看“分而治之”等原则
- 分布式架构学习之:020--服务接口设计原则
- 从腾讯QQgame高性能服务器集群架构看“分而治之”与“自治”等分布式架构设计原则
- 结合领域驱动设计的SOA分布式软件架构
- 基于WCF大型分布式系统的架构设计
- 结合领域驱动设计的SOA分布式软件架构
- 分布式设计与开发(五)------数据库高可用架构
- 软件架构设计原则和模式(上):分层架构设计
- 架构设计的原则
- 针对架构设计的几个痛点,我总结出的架构原则和模式
- 《.NET应用架构设计:原则、模式与实践》新书博客--试读-1.3 架构设计中的重要概念
- 分布式发布订阅消息系统 Kafka 架构设计---1
- 软件的架构与设计模式之层次原则
- 指导性架构设计原则