自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Morty的技术乐园

记录为更好的前行

  • 博客(7)
  • 论坛 (1)
  • 收藏
  • 关注

转载 MySQL 高级 —— MVCC 多版本并发控制

引言 MySQL的大多数事务型存储引擎实现的都不是简单的行级锁。基于提升并发性能的考虑,它们一般都同时实现了多版本并发控制——MVCC。包括其他数据库如Oracle等,由于MVCC并没有一个统一的实现标准,因此它们的实现原理都不尽相同。 MVCC简介 可以认为MVCC是行级锁的一个变种。但是它在很多情况下避免了加锁操作,因此开销很低。一般都实现了非阻塞的读操作,同时写操作也只是锁定必要的行。 MVCC的实现,是通过保存数据在某个时间点的快照来实现的。也就是说,不管需要执行多长时间,每个事务看到的数据

2020-06-27 18:42:00 199

原创 Java常用设计模式————组合模式

引言 组合模式,是一种类似递归算法的结构性设计模式,通过以简单的 List ,组合本类对象,实现树状对象结构的“部分、整体”的层次。 它可以让调用程序不需要关心复杂对象与简单对象的区别,而统一地实现处理逻辑。 对于个体与整体存在一定共性的数据场景的展示非常有帮助,比如省市区的树状结构,领导与员工、校院系等。 一、组合模式的类图结构 用套娃形容组合模式非常贴切,其编码核心其实就是用数组来组合下级对象,而下级对象本身也属于此类实例。一般就是用于描述某种极具共性的实体类,如省、市、区;领导、员工等。

2020-06-25 21:15:26 139

原创 Java常用设计模式————装饰者模式

引言 装饰者模式,又叫装饰器模式。它可以动态的将新功能附加到对象上。在对象功能扩展方面,它比继承更灵活,同时装饰者模式也体现了OCP原则。 在客户端调用使用了装饰者模式的对象时,就好像在使用构造器层层包裹核心对象,层层装饰核心对象,因此叫做装饰者模式。 一、装饰者模式类图 装饰者模式属于结构型设计模式。在JDK的IO流API中,就利用了装饰者模式: 以简单的形状和颜色为例。如何为不同的形状装饰新的颜色呢? 上图中,Shape和ShapeDecorator都是抽象类,一般情况下,装饰者模式

2020-06-24 22:11:48 158

原创 Java常用设计模式————桥接模式

引言 在实际的业务中,经常会遇到多维度的概念组合,公园的门票,颐和园有年票、月票、日票,故宫也有年票、月票、日票。那么不同的公园和票种类型就可以视为两种不同的纬度,它们之间会形成相互组合的关系。 在类的设计上,如果任由两种纬度的类任意组合的话,那么就会形成笛卡尔积的情况,使类泛滥,难以维护。 在设计模式中,桥接模式就是为了解决这个问题而提出的,它通过将两种或多种纬度以上层抽象的组合关系为基础,形成一种桥接模型,将业务的组合时机延迟到客户端调用使才发生,避免在编写类的时候,大量的枚举每一种具体情况。

2020-06-22 23:20:00 113

原创 Java常用设计模式————适配器模式

引言 由于无法直接使用某个类中的方法而采取的一种中间类转换的策略。将一个类的接口转换成另一个接口,让原本接口不兼容的类可以兼容。 适配器模式可以分为三种:类适配器、对象适配器、接口适配器。它们之间的区别主要体现在适配器角色与被适配角色之间的依赖关系上。如类适配器是通过继承的方式,令适配器继承被适配类。 一、类适配器 ...

2020-06-21 11:43:56 100

原创 哈希表的大小为何最好是素数

引言 为什么散列函数采用取模运算?又为什么取模运算的被取模数最好是素数?素数是如何在取模运算中很好的规避冲突的? 这些问题可能困扰诸多程序员很久了。我们总是说素数可以更好的避免冲突,但总是对各种长篇大论的分析望而却步。 这篇文章是我在学习散列时针对素数在哈希函数中的如何成功避免大量冲突的原因总结。 尽可能言简意赅地描述为什么素数那么香。 一、结论 素数能够在取模运算中避免冲突并不是一个数学定律,而且能够避免冲突也不是绝对的。 从规律上来看,如果待存储的数列间隔是被取模数的因子,那么合数要比素数

2020-06-07 08:14:03 457

原创 设计模式七大原则

引言 设计模式如单例模式、工厂模式、适配器模式等,大概有二十多种,但是这些设计模式的背后,有七大设计基本原则。 它们分别是:单一职责原则,接口隔离原则,依赖倒转原则,里氏替换原则,开闭原则(OCP),迪米特法则,合成复用原则。 这些设计模式的基础设计原则,虽然都非常简单,但是却指导着软件开发的方方面面。这篇文章对各个原则做以简单总结。 一、单一职责原则 单一职责原则(SRP:Single responsibility principle)又称单一功能原则,它规定一个类应该只有一个发生变化的原因。应

2020-06-05 20:27:48 96

空空如也

圣斗士Morty的留言板

发表于 2020-01-02 最后回复 2020-12-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除