- 博客(8)
- 收藏
- 关注
原创 【MySQL】InnoDB内存结构-Buffer Pool
前言无论是后端开发、DBA、还是测试,几乎每天都会和MySQL打交道。尤其是后端开发人员,大部分只是停留在使用的阶段,并不知道其底层原理。内存与磁盘结构对于innoDB存储引擎来说,数据是存储在磁盘上,而执行引擎想要操作数据,必须先将磁盘的数据加载到内存中才能操作。那么innoDB是如何将磁盘中的数据加载到内存中?是不是用多少就加载多少?如果内存不够用了怎么办?先带着这些问题,认真往下看InnoDB整体架构以下是摘自mysql官网的一个图,现在看不懂没关系,先看完文章后,再回头来看需要了解的一
2022-03-15 21:22:22 1867 3
原创 【Nginx】最新版nginx安装
前言最新版的nginx安装和以前版本有些不一样,依赖的包也不同。特此记录一下。内容去官网下载nginx最新包后,在CentOS7上安装1.tar -zxvf 解压最新nginx包。2.进入解压后的目录,执行./configure --prefix=/usr/nginx对该条命令说明:这种方式是Linux的源码安装,configure的作用是生成Makefile文件,有时候安装包里有这个...
2019-12-08 18:39:33 1107
原创 【并发编程】原子性、可见性、有序性
前言并发编程算是任何语言比较难以理解的部分,提到并发编程,最重要的就是线程安全性问题如何解决。而线程安全性问题主要体现在原子性、可见性以及有序这三个方面。内容1 CPU缓存-可见性问题可见性是指当一个线程修改了共享变量的值,其他线程能够立即得知这个修改。一般可用volatile修饰共享变量就可以解决可见性问题1.1 从硬件层面了解可见性的本质一台计算机中最核心的组件是 CPU、内存、以...
2019-11-17 22:35:08 223
原创 【踩坑记录】Spring+Junit 单元测试 报错Failed to load ApplicationContext
前言正文问题描述使用Spring 3.x 版本+ junit 4.12 + jdk8 这样使用junit单元测试,会报错。原因很简单:就是jdk8 必须要求 Spring 4.x版本的。把Spring版本升级为Spring 4.X即可 完美运行。...
2019-11-09 18:03:39 1998 1
原创 SpringCloud,SpringBoot基本用法
Spring Boot的配置1.SpringBoot配置方式yaml的语法 https://www.jianshu.com/p/48f87f3f7a332.SpringBoot配置文件的优先级SpringBoot 启动时会自动扫描配置文件properties和yaml项目路径/config/xxx 优先级最高 即直接在项目下建立配置文件项目路径/xxxclasspath...
2019-08-18 20:47:21 118
原创 破坏单例模式的原因
前言大家都知道单例模式,单例模式(Singleton Pattern)是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。单例模式是创建型模式。具体做法是将构造器私有化,不让其他类调用构造器,即其他类不能通过new的方式创建对象。但是反射 ,序列化,克隆等操作都有可能会破坏单利模式。现在看一个问题,创建一个类的对象有几种方式呢?new反射序列化克隆(或称为复制,拷贝)...
2019-06-16 18:53:07 1275 2
原创 多线程的一些基础知识
前言本文中包括多线程的一些基础知识,参考了一些文档和书籍,自己总结出来的常见的问题,以及其他优秀博文的链接。1.线程的6个状态https://blog.csdn.net/xiamiflying/article/details/829033611.1 初始态( NEW)创建一个 Thread对象,但还未调用start()启动线程时,线程处于初始态。运行态( RUNNABLE),在Java中...
2019-05-29 14:49:34 153
原创 JVM内存模型
根据Java虚拟机规范:JVM内存主要划分为程序计数器,虚拟机栈,本地方法栈,Java堆,方法区(永久代)特别说明下,JVM内存模型和Java内存模型是不一样的JMM规定了所有的变量都存储在主内存(Main Memory)中。每个线程还有自己的工作内存(在CPU层面就是CPU的缓存),线程的工作内存中保存了该线程使用到的变量的主内存的副本拷贝,线程对变量的所有操作(读取、赋值等)都必须在工...
2019-03-27 21:23:40 126
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人