深入理解MySQL基础篇


MySQL体系结构与存储引擎MySQL体系结构先看 MySQL 数据库的体系结构,如下图所示。MySQL体系结构由ClientConnectors层、MySQLServer层及存储引擎层组成。ClientConnectors层负责处理客户端的连接请求,与客户端创建连接。目前 MySQL 几乎支持所有

MySQL 常见知识点总结


MySQL架构逻辑架构图和执行流程:并发控制表级锁: MySQL中锁定 粒度最大 的一种锁,对当前操作的整张表加锁,实现简单,资源消耗也比较少,加锁快,不会出现死锁。其锁定粒度最大,触发锁冲突的概率最高,并发度最低,MyISAM和 InnoDB引擎都支持表级锁。行级锁: MySQL中锁定 粒度最小

MySQL 面试题


MySQL面试题如何设计一个关系型数据库?首先划分为两大部分,一个存储部分,类似文件系统将数据持久化到硬盘上,另一个是程序实例部分,创建模块:存储管理,缓存机制,SQL解析,日志管理,权限划分,容灾机制**,索引管理,锁模块**。数据库的三范式是什么?第一范式:强调的是列的原子性,即数据库表的每一列

Linux 面试题


Linux面试题如今程序员生产的代码99%都部署在linux环境下,代码发现缺陷,程序员的第一反应是到 Linux 上拉日志下来看。程序员不是运维,不需要掌握非常多复杂命令。推荐终端工具SecureCRTxshell常用命令(重要)ls/ll、cd、mkdir、rm-rf、cp、mv、ps -ef

设计模式


有一些重要的设计原则在开篇和大家分享下,这些原则将贯通全文:面向接口编程,而不是面向实现。这个很重要,也是优雅的、可扩展的代码的第一步,这就不需要多说了吧。职责单一原则。每个类都应该只有一个单一的功能,并且该功能应该由这个类完全封装起来。对修改关闭,对扩展开放。对修改关闭是说,我们辛辛苦苦加班写出来

JVM 面试题


JVM 的主要组成部分及其作用类加载器(ClassLoader)运行时数据区(Runtime Data Area)执行引擎(Execution Engine)本地库接口(Native Interface)组件的作用: 首先通过类加载器(ClassLoader)会加载类文件到内存,Class load

多线程面试题


多线程面试题临界资源临界资源是一次仅允许一个进程使用的共享资源。各进程采取互斥的方式,实现共享的资源称作临界资源。属于临界资源的硬件有,打印机,磁带机等;软件有消息队列,变量,数组,缓冲区等。诸进程间采取互斥方式,实现对这种资源的共享。临界区:每个进程中访问临界资源的那段代码称为临界区(critic

并发基础


并发基础JMM(Java 内存模型)原子性(Atomictiy)原子性是指一个操作是不可中断的。即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。可见性(Visibility)可见性是指当一个线程修改了某一个共享变量的值时,其他线程能否立即知道这个修改。缓存优化,硬件优化,指令

集合框架面试知识点


集合框架面试题和解析为什么要设计出迭代器迭代器本质是一种设计模式,为了解决为不同的集合类提供统一的遍历操作接口。List、Set、Map 之间的区别List1.可以允许重复的对象。2.可以插入多个null元素。3.是一个有序容器,保持了每个元素的插入顺序,输出的顺序就是插入的顺序。4.常用的实现类有

Java 容器


一 概览容器的思维导图:CollectionListJava 的 List 是非常常用的数据类型。List 是有序的 Collection。Java List 一共三个实现类:分别是 ArrayList、Vector 和 LinkedList。ArrayList:ArrayList 是最常用的 Li