自定义博客皮肤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)
  • 收藏
  • 关注

原创 设计模式-单例模式

确保一个类在任何情况下只有一个实例提供一个全局访问点。

2025-10-15 18:27:21 843

原创 Mysql Binlog 和 Redolog二阶段提交以及三大日志的区别

通过二阶段提交协同工作,共同保证数据的高可靠性和主从一致性。Redo Log 关注“数据不丢”,Binlog 关注“数据复制”。:在事务中协同工作。修改数据时,先写 Undo Log 用于回滚和 MVCC,再写 Redo Log 保证这个修改持久化。它们共同保证了事务的A(原子性)和D(持久性)。:没有直接关系。Binlog 用于 Server 层的复制和恢复,Undo Log 是 InnoDB 引擎内部用于事务控制和多版本的机制。

2025-10-15 18:26:10 921

原创 Mysql Binlog同步机制

是 MySQL 服务层产生的、以二进制形式记录的、用于记录数据库执行的所有更改数据的 SQL 语句(如INSERTUPDATEDELETE等)或数据变更前/后的行记录的日志。关键点:服务层日志: 与存储引擎无关,无论使用 InnoDB、MyISAM 还是其他引擎,只要数据发生了变更,就会记录 Binlog。逻辑日志: 它记录的是逻辑上的操作,而不是物理数据页的变更(这与 InnoDB 的 Redo Log 不同)。追加写入: Binlog 文件是顺序写入的,效率很高。重要基石: 它是 MySQL 实现。

2025-10-12 04:39:27 265

原创 Mysql LBCC锁定一致性事务

死锁是指两个或多个事务相互等待对方释放锁,导致所有事务都无法继续执行的状态。死锁产生的四个必要条件互斥条件:资源不能被共享,只能被一个事务占用占有且等待:事务已经占有了资源,同时又在等待其他资源不可抢占:资源只能由持有者释放,不能被强制抢占循环等待:事务之间形成环形的等待关系。

2025-10-12 04:37:57 930

原创 Mysql MVCC非锁定一致性事务

MySQL 的 MVCC 主要是通过 InnoDB 存储引擎实现的,它依赖于以下几个核心组件:InnoDB 为每一行数据(记录)都添加了三个隐藏的系统字段:(6字节):事务ID。表示最近一次插入或更新该行的事务ID。删除在内部也被视为一次更新。(7字节):回滚指针。指向该行数据在 中的上一个历史版本。所有的历史版本通过这个指针连接成一个版本链。(6字节):行ID。如果表没有定义主键,InnoDB 会自动生成一个隐藏的自增主键,使用这个字段。作用:主要用于事务回滚和 MVCC。存储内容:当一条记录被修改(I

2025-10-12 04:36:08 637

原创 MySQL InnoDB事务

所谓ACID模型,其实是数据库的一个设计原则,其目的就是尽可能的去保 证数据的可靠性,比如我们的InnoDB存储引擎,就严格的遵照了我们的 ACID模型。当然,既然是一个设计原则,就是尽可能的去满足,如果想要保证一定的 性能与吞吐量,你也可以进行设置,牺牲一定的数据一致性。

2025-10-12 04:33:04 476

原创 InnoDB 索引原理

当查询的所有字段都包含在索引中时,无需回表操作。

2025-10-12 04:31:29 666

原创 【工厂模式】

设计模式之工厂模式

2022-05-05 21:53:08 234

原创 七大设计模式

以上是我总结的七大设计原则,欢迎各位码友讨论

2022-04-13 18:21:15 317

原创 springboot+shiro中添加自定义过滤器 中使用@Autowired

记录一下shiro中添加自定义过滤器遇到的BUG@Configurationpublic class ShiroConfig { @Autowired WhiteListMapper whiteListMapper; @Autowired ResourceMapper resourceMapper; @Bean public ShiroFilterFactoryBean shirFilter(SecurityManager securityMa

2020-10-29 17:28:34 1490

原创 log4j日志打印详解实战

1.为什么要使用log4j?Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不

2018-01-22 16:26:17 13959 1

原创 web项目打包上传服务器

1.通过maven打包,步骤如下 打包好了在target下面 然后通过WinSCP连接服务器将war拷贝到tomcat的webapps目录下,启动tomcat就会自动编译,如需要发布在根目录,把之前的ROOT文件夹删除,再把包名改成ROOT 2.如果打包的war包存在缓存可以用Export实现导出war包 欢迎大家一起交流技术 小编阿辉

2017-12-29 15:43:35 4915

原创 Android布局(序章)

RelativeLayout相对布局 RelativeLayout是相对布局控件:以控件之间相对位置或相对父容器位置进行排列。 属性: 第一类:属性值为true或false android:layout_centerHorizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInP

2017-06-07 00:22:54 278

原创 Android中的四种布局

布局就是把界面中的控件按照某种规律摆放在指定位置,主要是为了解决应用程序在不同手机中的显示问题,小编给大家介绍一下四种布局。线性布局线性布局会将其中的控件一个接一个排序,可以横排和竖排。 常用属性: android:orientation 定义布局内的方向水平或垂直(horizontal/vertical ) android:layout_weight 子元素对未占用空间【水

2017-06-05 20:21:38 541

原创 Android入门

Android(安卓)想必大家都不陌生吧,我给大家简单的介绍一下入门的内容。 什么是Android? Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。 今天主要给大

2017-06-04 00:40:51 323

原创 JAVA设计模式(单例模式)

什么是单例             Singleton(单例)是设计模式中创建型模式的一种,为确保一个类             最多只有一个实例,并提供一个访问它的全局访问点。         单例特点                   单例类确保自己只有一个实例(构造函数私有:不被外部实例化,也不被继承)。

2017-06-02 23:35:58 258

空空如也

空空如也

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

TA关注的人

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