自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 Redis主从复制—看完这篇你就懂了

Redis主从复制主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。一个master可以有多个slave一个slave只能有一个master数据流向是单向的,master到slave主从复制的作用单机存在的问题

2020-06-17 00:13:11 1322

原创 类的加载与ClassLoader理解——初级版本

类的加载与ClassLoader理解——初级版本方法区是一个特殊的堆,包含了所有的class的数据结构(类变量,常量池,类型信息等等)类的加载过程加载:将class(.classs)文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后生成一个代表这个类的java.lang.Class对象。每个类只有一个Class对象!我们无法主动创建Class对象,只能获取。链接:将Java类的二进制代码合并到JVM的运行状态之中的过程。验证:确保加载的类信息符合JVM规范,

2020-05-22 16:13:54 223

原创 MySQL各数据类型的特点

MySQL各数据类型的特点常用的整数类型常见误区int(n) 是设置数据最大的显示宽度,所占的存储空间不会改变。常用的浮点类型123456789.987654321 = decimal(18,9)占用9个字节涉及财务等需要精确计算的数据使用decimal类型存储,但同时也会有更大的开销。常用的时间类型当我们想存储年份时,也可以使用int来存储,但smallint占...

2020-05-06 17:36:32 530

原创 数据库设计三大范式

数据库设计三大范式三大范式什么是范式:简言之就是,数据库设计对数据的存储性能,还有开发人员对数据的操作都有莫大的关系。所以建立科学的,规范的的数据库是需要满足一些规范的来优化数据数据存储方式。在关系型数据库中这些规范就可以称为范式。范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。表中的所有字段不可再分表中必须存在业务主键,并且非主键依赖于全部业务主键...

2020-04-29 17:38:25 193

原创 三种方式实现生产者消费者模式

生产者消费者模式此博文部分借鉴于:https://blog.csdn.net/u011109589/article/details/80519863https://blog.csdn.net/wuyangyang555/article/details/80832816通过一个容器来解决生产者和消费者的强耦合关系,生产者生成数据无需等待消费者索取,消费者无需直接索要数据。两者并不进行任何通讯...

2020-04-19 16:45:35 771

原创 Reids的一些简单操作以及API演示

Reids瑞士军刀一、慢查询keys * 、hmgetall 这些时间复杂度大的操作可能会导致慢查询。生命周期客户端超时不一定是慢查询,也可能是阻塞,或者是网络的通讯问题(生命周期中4个阶段都可能导致)两个配置slowlog-max-len先进先出的队列固定长度保存在内存内当队列满了,再有慢查询指令进入队列,第一个操作就会被去除。保存在内存中,如果重启,指令就会消失。...

2020-04-19 12:40:53 282

原创 a++多线程下出现消失的请求现象

a++多线程下出现消失的请求现象a++多线程下出现消失的请求现象是一个常见的多线程运行结果错误的例子。我们先来看一下a++代码执行图:按照我们想让它执行的顺序执行,结果应该是3。但在多线程下,结果就不一定如此。代码执行到i+1时,+1后的数值还没赋给i,如果在这个时候发生线程切换,那么此时i还是1。那么就会发生运行结果和预期不一样的错误。我们用代码模拟一下public class ...

2020-03-31 00:58:40 330

原创 设计模式之外观模式

外观模式概念介绍定义与类型定义:又叫门面模式,提供了一个统一的接口,用来访问子系统中的一群接口外观模式定义了一个高层接口,这个接口使得子系统更容易被访问或者使用类型:结构型角色与关系[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J1D0aOsW-1598775944174)(_v_images/20200830160006820_2658.png =599x)]简单来说,该模式就是把一些复杂的流程封装成一个接口供给外部用户更简单的使用。这个模式中,设计到3

2020-08-30 16:26:49 147

原创 设计模式之原型模式

原型模式定义:指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。不需要知道任何创建的细节,不需要调用构造函数类型:创建型适用的场景类初始化消耗较多资源(比较重的对象)new产生的一个对象需要非常频繁的过程(数据准备、访问权限等等)构造函数比较复杂循环体中生产大量的对象时另外在软件系统中,有些对象的创建过程较为复杂,而且有时候需要频繁创建,原型模式通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象,这就是原型模式的意图所

2020-08-28 23:34:51 142

原创 轻松搞定单例模式以及线程安全等问题

单例模式单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。定义:保证一个类仅有一个实例,并提供一个全局访问点类型:创建型单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。适用场景想确保任何情况下都绝对只有一个实

2020-07-05 02:36:18 215

原创 设计模式——建造者模式

建造者模式定义:将一个复杂对象的构造与它的表示分离,使得同样的构造过程可以创建不同的表示用户只需要指定需要建造的类型就可以得到它们,建造过程及细节不需要知道类型:创建型适用场景如果一个对象有非常复杂的内部结构(很多属性)想把复杂对象的创建和使用分离优点于缺点优点:封装性好,创建与使用分离扩展性好,建造类之间独立,一定程度上解耦缺点:产生多余的Builder对象产品内部发生变化,建造者都要修改,成本较大有人就会有疑问,同样是创建型,构造者模式与工厂模式有什么区别?

2020-07-02 17:11:12 124

原创 设计模式——抽象工厂模式

抽象工厂模式学前可了解:简单工厂模式介绍 工厂方法介绍定义:抽象工厂模式提供一个创建一系列相关或者相互依赖对象的接口无须指定它们的具体类类型:创建型适用场景客户端(应用层)不依赖于产品类实例如何被创建、实现的细节强调一系列相关的产品对象(属于同一产品族)一起使用创建对象需要大量重复代码提供一个产品类的库,所有的产品以同样的接口出现,从而客户端不依赖于具体实现优点与缺点优点具体产品在应用层代码隔离,无需关心创建细节将一个系列的产品族统一到一起创建缺点规定了所有可能被创

2020-06-30 16:47:18 148

原创 设计模式——工厂方法模式

工厂方法模式学前先了解一下:简单工厂方法的介绍定义: 定义一个创建对象的接口,但让实现这个接口的类来决定实例化哪个类,工厂方法让类的实例化推迟到子类进行类型: 创建型适用场景创建对象需要大量重复代码客户端(应用层)不依赖于产品类如何被创建、实现等细节一个类通过其子类来指定创建哪个对象优点与缺点优点:用户只需要关心所需要产品对应的工厂,无需关心创建细节加入新产品符合开闭原则,提高可拓展性。缺点:类的个数容易多多,增加复杂度增加了系统的抽象性和理解难度编码实现工厂方法模

2020-06-29 16:48:14 138

原创 设计模式——简单工厂模式

简单工厂模式定义: 由一个工厂对象决定创建出哪一种产品类的实例类型: 创建型,但不属于GOF23种设计模式适用场景工厂类负责创建的对象比较少客户端(应用层)只知道传入工厂类的参数,对于如何实现创建对象(逻辑)不感兴趣优点与缺点优点: 只需要传入正确的参数,就可以获取你所需要的对象而无需知道其具体创建细节缺点: 工厂类的职责相对过重,增加新的产品需要修改工厂类的判断逻辑,违背开闭原则编码实现简单工厂模式(java)// Video抽象类public abstract class Vi

2020-06-29 16:46:57 97

原创 MySQL INNODB事务隔离级别——初级

MySQL INNODB事务隔离级别——初级事务概述什么是事务?事务时数据库操作的最小逻辑单元事务可以由一个SQL组成也可以由多个SQL组成组成事务的SQL要么全执行成功,要么全执行失败开启事务:START TRANSACTION / BEGINSELECT...UPDATE...INSERT...COMMIT / ROLLBACK事务的特性特征说明原子性(A)一个事务的所有操作,要么全部完成,要么全部不完成,不会结束在中间某一个环节。一致性©在

2020-06-05 01:15:58 121

原创 Redis持久化——RDB、AOF

Redis持久化——RDB、AOF什么是持久化redis所有数据都保存在内存中,对数据的更新异步保存到磁盘上。在Redis中持久化的方式有两种,一种是快照持久化,一种是AOF持久化,各有各的优缺点,在项目中我们得根据实际的情况来选择具体的持久化方式。快照持久化(RDB)也叫RDB持久化方式。就是通过拍摄快照的方式来实现持久化,将某个时间的内存数据存储在一个rdb文件中。在redis服务重新启动的时候会加载rdb文件中的数据。通过RDB方式实现持久化,一旦Redis异常退出,就会丢失最后一次快

2020-05-26 14:58:05 204

空空如也

空空如也

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

TA关注的人

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