随笔分类 - 软件架构和设计
摘要:
本篇从单机小型机->垂直拆分->集群化负载均衡->服务化改造架构->服务治理->微服务时代的架构演进开始阐述,并逐步引出ServiceMesh服务网格时代,了解ServiceMesh的概念,列出一些国内外的ServiceMesh项目,最后重点介绍了目前最主流的产品Istio的组成和特点。
阅读全文

摘要:
本篇详细剖析DDD的分层架构,从DDD架构视角看MVC架构的问题,总结DDD架构规范,并也从事物两面性角度说明DDD存在一些问题。微服务的拆分一个层面是数据库层面的拆分,一个层面就是上层应用功能业务层面的拆分,但如果系统上层逻辑是依赖底层一个大的数据资源,那么微服务拆分不当就有可能导致拆分后的微服务出现大量的跨库查询、分布式事务的情况。
阅读全文

摘要:
本篇通过简单例子分析对DDD有一个初步全面的理解。随着软件系统越来越庞大,需求越来越模糊,代码越来越混乱,测试越来越困难,技术演进基本不可能,而其中大型复杂的软件项目更容易走向系统老化的过程,形成需求难、开发难、测试难、创新难,单体架构局部业务膨胀可以拆成微服务,那么微服务局部业务膨胀又应该怎么做?DDD之所以火,即能解决微服务解决不了的问题。DDD是为了解决快速变化、复杂系统的设计问题。
阅读全文

摘要:
设计模式为Java后端开发人员成长经历过程必须深入理解的硬技能,本篇以简洁代码示例通俗易懂的方式阐述11个设计模式,持之以恒把一次性把设计模式吃透
阅读全文

摘要:
设计模式为Java后端开发人员成长经历过程必须深入理解的硬技能,本篇先推荐具备面向对象思想、UML、类图和类的关系为前提学习条件,以先反例后正例剖析七大软件设计原则,最后以通俗易懂的方式先阐述单例和模板方法两个设计模式。
阅读全文
