03 2021 档案
摘要:工厂模式 工厂方法模式: 定义一个用于创建对象的接口,但是让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类。 工厂方法模式就是简单工厂模式的进一步抽像。由于面向对象多态性,工厂方法模式保持了简单工厂的有点同时克服了他的缺点。工厂方法模式中,核心的工厂被提升为一个抽象类,将具体的创
阅读全文
摘要:简单工厂模式 内容 不直接向客户暴露对象创建的实现细节,而是通过一个工厂类来负责创建产品类的实例。 角色 工厂角色 抽象产品角色 具体产品角色 优点 隐藏类对象创建的实现细节 客户端不需要修改代码 缺点 违反类单一职责原则,将创建逻辑集中到一个工厂类里 当添加新产品时,需要修改工厂类的代码,违反了开
阅读全文
摘要:一、什么是单例模式 单例模式是一种常用的软件设计模式,其定义是单例对象的类只能允许一个实例存在。 许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。 比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取, 然后服务进程中的其他对象再
阅读全文
摘要:前言 我们知道,生产者发送消息到主题,消费者订阅主题(以消费者组的名义订阅),而主题下是分区,消息是存储在分区中的,所以事实上生产者发送消息到分区,消费者则从分区读取消息,那么,这里问题来了,生产者将消息投递到哪个分区?消费者组中的消费者实例之间是怎么分配分区的呢?接下来,就围绕着这两个问题一探究竟
阅读全文
摘要:| ### 背景 | | | | Elasticsearch由一些Elasticsearch进程(Node)组成集群,用来存放索引(Index)。为了存放数据量很大的索引,Elasticsearch将Index切分成多个分片(Shard),在这些Shard里存放一个个的文档(document)。通过
阅读全文