Mysql 索引删除后,磁盘文件没有变化?
Mysql 索引删除后,磁盘文件没有变化? 今天碰到一个问题,线上数据库磁盘文件快满了,最后定位发现某张表的索引文件过大,里面有6个索引!!打算清理一下释放一下磁盘空间。可以没想到的是索引删除之后磁盘占用丝毫没有降低。这个就离了个大谱了!! 然后自己做了个实验: 首先创建一个测试表your_table_name -- 创建表 CREATE TABLE your_table_name (...
Mysql 索引删除后,磁盘文件没有变化? 今天碰到一个问题,线上数据库磁盘文件快满了,最后定位发现某张表的索引文件过大,里面有6个索引!!打算清理一下释放一下磁盘空间。可以没想到的是索引删除之后磁盘占用丝毫没有降低。这个就离了个大谱了!! 然后自己做了个实验: 首先创建一个测试表your_table_name -- 创建表 CREATE TABLE your_table_name (...
SOLID Principles/实体原则 1. Single Responsibility Principle [SRP] 2. Open-Closed Principle 3. Liskov’s Substitution Principle 4. Interface Segregation Principle 5. Dependency Inversion Principle
Liskov Substitution Principle/里氏替换原则(LSP) wiki 定义 由Barbara Liskov在1987 首次提出。 Data abstraction and hierarchy. 原始定义: if S is a subtype of T, then objects of type T in a program may be replaced...
Decorator模式 装饰器模式 Intent/目的 动态地为对象附加额外的责任。装饰器为扩展功能提供了一种灵活的替代方案,而不是通过子类化 Also Known As Wrapper Motivation/动机 有时我们希望给单个对象添加新的职能,而不是整个类。例如,图形用户界面工具包应该允许您向任何用户界面组件添加属性(如边框)或行为(如滚动)。 一种添加职能的方法是通过...
Composite模式 组合模式 Intent/目的 将对象组合成树形结构,以表示部分-整体的层次关系。组合模式让客户端能够统一地处理单个对象和对象组合。 Motivation/动机 图形应用程序,如绘图编辑器和原理图捕获系统,允许用户通过简单组件构建复杂的图表。用户可以将组件分组形成更大的组件,这些更大的组件又可以被分组形成更大的组件.一个简单的实现可以定义图形原语的类,例如文本和...
Bridge模式 桥接模式 Intent/目的 将一个抽象与其实现解耦,使得两者可以独立变化 Also Known As Handle/Body Motivation/动机 当一个抽象可以有几种可能的实现时,通常的做法是使用继承。抽象类定义了抽象的操作,而具体的子类以不同的方式实现它。但是,这种方法并不总是足够灵活的。继承将实现和抽象永久地绑定在一起,这使得难以独立地修改、扩展和...
Adapter Pattern / 适配器模式 Intent/目的 Adapter(适配器)允许不兼容接口的类一起工作,从而将一个类的接口转换成客户端所期望的另一个接口。 Also Known As/其它叫法 Wrapper Motivation/动机 有时设计上可复用的工具类并不能被复用,仅仅是因为工具类的接口不能复合特定领域应用程序的需要。 举一个画板的例子,它可以让用户拖...
设计模式-单例模式 Intent/目的 确保类只有一个实例,并提供全局的访问点。 Motivation/动机 对于某些类来说,拥有确切的一个实例是很重要的。尽管在系统中可以有许多打印机,但打印池应该只有一个。应该只有一个文件系统和一个窗口管理器。数字滤波器将有一个模数转换器。会计系统将专门为一家公司提供服务。 我们如何确保一个类只有一个实例,并且该实例易于访问?全局变量使对象可访问...
Prototype模式 原型模式 Intent/目的 使用原型实例创建指定种类的对象,通过复制原来的对象来创建新的对象。 Motivation/动机 你可以使用通用框架构建一个乐谱图形化编辑器,添加新的对象来代表音符、休止符和五线谱。编译器框架应该有一个工具的调色板用来添加新的音乐元素到乐谱上。调色板也需要包含工具的选择、移动还有其他的自定义音乐对象。用户可以点击四分音符的工具,添加...
Redis RESP协议 REdis Serialization Protocol (RESP). 即所谓的Redis序列化协议 官方文档 与Redis服务端通信,Redis的客户端使用的通信协议叫RESP.虽然此协议是为redis设计的,但也可以用在其他C-S架构的项目上。 RESP在下面的场景中做了折中处理: 简单实现 快速解析 可读性高 RESP可以序列化不...