随笔分类 - 架构设计类与算法
领域驱动架构设计之命令查询职责分离
摘要:本文译自Martin Flower的文件:https://martinfowler.com/bliki/CQRS.html QRS 代表命令查询职责分离。这是我第一次听到Greg Young描述的模式。其核心概念是,您可以使用与用于读取信息的模型不同的模型来更新信息。在某些情况下,这种分离可能很有价
阅读全文
一致性哈希的基本概念
摘要:一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。 一致性hash算法提出了在
阅读全文
关联,依赖,泛化(又称继承分为扩展或包含),实现,聚合(共享),复合(组合)
摘要:从关联—依赖—泛化—实现—聚合—复合是一层比一层对两个类之间的关系描述紧密。 1.关联 一般是指两个类之间有相对松散关系,若双方都知道对方则可用实线[双向箭头]连接,或只其中一方知道则用实线加单向箭头从隐藏方指向暴露方,但某个类是否存在并不影响另一个类的存在与否. 如客户与车子(通过买,租用或其它方
阅读全文
常用设计模式UML图示
摘要:1. 简介 设计模式是常见软件设计问题的可重用解决方案。它们提供了一种描述和记录软件架构的方法,以及开发人员交流软件设计的常用词汇。 一般设计模式按用途可以分成有3种类型,它们分别是创建模式、结构模式和行为模式。 创建模式处理对象创建机制,尝试以恰当的方式创建对象。 结构模式处理对象组合,处理对象之
阅读全文
常用23种设计模式Java经典实现(使用常用电商业务订单、购物车,商户,支付,优惠券为例)
摘要://工厂方法设计模式(Factory Method Pattern) 定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。 它的思想是:在工厂设计模式中,我们创建对象不是直接使用 new 关键字创建,而是将创建对象的行为委托给另一个类,也就是工厂类。把实例化的
阅读全文
数据的水平分片意义
摘要:超大型数据库的大小常常达到数百GB,有时甚至要用TB来计算。而单表的数据量往往会达到上亿的记录,并且记录数会随着时间而增长。这不但影响着数据库的运行效率,也增大数据库的维护难度。除了表的数据量外,对表不同的访问模式也可能会影响性能和可用性。在单个服务器上管理数据存储的解决方案(详见什么是数据的表分区
阅读全文
浙公网安备 33010602011771号