自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySql优化之执行计划

MySql基本架构: 首先我们对mysql的基本架构做一个认知: 连接器:连接器的作用是与客户端建立连接,获取权限,维持和管理连接,例如用户和密码校验,分配权限等等 分析器:mysql会把输入的sql字符串按照一定的规则进行解析,形成一个语法树,如果不符合mysql的语法,就会报错 优化器:对表中的索引进行选择,对多表连接的优化,决定表的连接顺序,不同的执行方式对SQL语句的执行效率影响很大 执行器负责sql的具体执行,而存储引擎层分为Innodb和MyiSam的不同结构,主要是为了做日志备份和存储的,这

2020-10-29 15:30:51 112 1

原创 MySQL锁的基本介绍

1.mysql锁的基本介绍: 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点的是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);InnoDB存储引擎既支持行级锁(row-level locking),也支持表级锁,但默认情况下是采用行级锁。 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。 行级锁:开销大,加锁慢,会出现死锁,锁定粒度最小,发生锁冲突的概率最低,并发度也最高。

2020-10-21 23:22:00 1645 6

原创 MySql数据库的隔离级别讲解

事务的四大特性(ACID) 1.原子性(Atomicity): 事务开始后开始操作,要么全部做完,要么全部不做。事务是一个不可分割的整体。事务在执行过程中出错,会回滚到事务开始之前的状态,以此来保证事务的完整性。类似于原子在物理上的解释:指化学反应不可再分的基本微粒,原子在化学反应中不可分割。 2.一致性(Consistency): 事务在开始和结束后,能保证数据库完整性约束的正确性即数据的完整性。比如经典的转账案例,A向B转账,必须保证a扣了钱,b一定能收到钱。 3.隔离性 事务之间完全隔离,互相不进行干

2020-10-16 18:30:17 124

原创 volatile详述

volatile在java程序员在做开发的时候相信都遇到过,禁止指令重排序,那么它是如何保证在特定情况下不乱序的呢? 首先在硬件级别,x86提供了3条指令: sfence: store| 在sfence指令前的写操作当必须在sfence指令后的写操作前完成。 lfence:load | 在lfence指令前的读操作当必须在lfence指令后的读操作前完成。 mfence:modify/mix | 在mfence指令前的读写操作当必须在mfence指令后的读写操作前完成。 或者是原子指令: lock…,执行

2020-09-22 23:03:47 166 1

原创 ## java中Class文件字节码分析

通过jclasslib对Class文件做简单分析 学习jvm的时候,用到了jclasslib的插件,对于java的class文件进行了深刻的学习,我们都知道jvm是一种规范,在jvm上运行的语言目前有上百种,而jvm也如同操作系统一般提供了各种规范和定义,其中就包括对于class文件的解析. 首先我们的源程序会被javac编译成为class文件,jvm不同的平台提供了不同的编译方式,而jvm也在不同平台有各自的编译和解释,因此java看起来像是跨平台,而实际上也只是jvm的跨平台. 首先我们在idea中写好

2020-09-20 22:04:14 178 3

空空如也

空空如也

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

TA关注的人

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