摘要: 基础 Redis是什么? Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件 Redis为什么是CP? https://stackoverflow.com/questions/59511275/redis-availability-and-cap-t 阅读全文
posted @ 2021-04-20 21:32 Code&Fight 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 本文不是纯粹的技术文,用自己的语言来阐述一些观点。 1. 网络基础 先上一个图: 有人说会,这个记住了,有什么用呢? A用户发送一封电子邮件给B用户,是什么样的过程?这个了解吗?下图摘自《图解TCP IP》 再问你,nginx负载均衡和F5硬件负载均衡是在哪一层做的? 负载均衡也会涉及到该分层模型, 阅读全文
posted @ 2021-04-11 12:08 Code&Fight 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 1. 配置linux 1.1 修改配置 安装virtualbox的过程略过。 进入 ,编辑: 1》将BOOTPROTO=dhcp 改为 BOTPROTO=static 2》添加硬件地址配置: HWADDR= (使用ip addr 命令查出来的硬件地址,2中有示范) 3》添加IP配置:IPADDR=1 阅读全文
posted @ 2020-04-29 22:02 Code&Fight 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 1. 定义 状态模式 允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。 2. 类图 3. Example 下面定义了一个State接口,接口里有个meaningOfLife的方法,定义了出生、三十、四十、五十、顿悟的几种状态。 人的主体PersonContext成员变量有State 阅读全文
posted @ 2020-03-17 22:40 Code&Fight 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 1. 定义 使用 中介者模式 来集中相关对象之间复杂的沟通和控制方式。 2. 类图 3. Example 4. 使用 MVC中的C 机场调度中心 https://www.jianshu.com/p/4b57ed461a54 中提到的数据同步的问题倒是挺不错的 5.其他 中介者的优点: 1. 通过将对 阅读全文
posted @ 2020-03-10 23:47 Code&Fight 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 1. 定义 享元模式 是池技术的重要实现方式,定义如下:使用共享对象可有效支持大量的细粒度的对象。 2. 类图 3. Example 偷个懒, https://www.jianshu.com/p/a2aa75939766 这里的火车票例子还是蛮不错的! 4. 使用场景 系统中存在大量的相似对象 需要 阅读全文
posted @ 2020-03-03 23:45 Code&Fight 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 类图 其他 1. 优点: 性能优良: 原型模式是在内存二进制流的拷贝,要比直接new一个对象性能好很多 逃避构造函数约束(优缺点并存): 2. 使用场景 资源优化场景 性能和安全要求的场景 一个对象多个修改者的场景 (实际项目中 阅读全文
posted @ 2020-03-03 23:01 Code&Fight 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 1. 定义 桥接模式 将抽象部分与它的实现部分分离,使它们都可以独立的变化。 2. 类图 3. Example 假如你是个小有所成的成功人士,开了家公司,生产什么商品全靠追风,哪个赚钱生产哪个,请写出商品生产、销售的过程,要求商品变化时,代码尽可能少变化。 输出如下: 个人理解: 桥接模式好像是这样 阅读全文
posted @ 2020-03-03 21:54 Code&Fight 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 1. 定义 当你想让一个以上的对象有机会能够处理某个请求的时候,就使用责任链模式。 2. 类图 3. Example 作为员工需要请假或者加薪,需要经历:技术leader——部门经历——CTO的流程。 输出结果: 由此可见,请求被处理的时候,你不知道是谁在进行处理。请求有可能会被处理,也有可能不会被 阅读全文
posted @ 2020-02-26 22:13 Code&Fight 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 单例模式 传统的写法 懒汉模式的线程不安全复现 解决方案: 1. 懒人同步——getInstance方法加上synchronized关键字 2. DCL——Double Checked Lock双重检查锁定 DCL: 关于DCL存在的问题,参考《并发编程的艺术》3.8节。 线程执行到(1)时,代码读 阅读全文
posted @ 2019-09-18 12:53 Code&Fight 阅读(129) 评论(0) 推荐(0) 编辑