Lizhi Blog

博观而约取,厚积而薄发

高性能MySQL

High Performance MySQL

淘宝网数据库架构从垂直拆分走向水平拆分,MySQL则在大规模水平集群的架构设计中收到关注,2012年整个淘宝网核心交易系统已经全部运行在基于PC服务器的MySQL数据库集群中,全部实例数超2000个,MySQL单库经受了最高达6.5万的QPS 基础1-6 应用7-9 集群10~ 第一章 MySQL架构与历史 MySQL逻辑架构 第一层,服务层(为客户端服务):为...

Transaction 那点事儿

事务的基本知识

转载自黄勇的博客,Java那点事儿系列 事务的四个特性 原子性(Atomicity):事务必须是一个不可分割的整体,要么做完,要么就不做。 一致性(Consistency):也就是说,执行完数据库操作后,数据不会被破坏。打个比方,如果从 A 账户转账到 B 账户,不可能因为 A 账户扣了钱,而 B 账户没有加钱吧。 隔离性(Isolation):当我们编写了一条 update...

Spring AOP实现解析

Java动态代理,CGLib,Spring AOP用法等

将Spring的核心分为IoC容器和AOP模块,IoC容器用来管理POJO对象和它们之间的耦合关系,属于Spring最核心的模块,AOP则以动态和非侵入式的方式来增强服务的功能,分为两篇文章分别详细介绍其原理。 代理模式 代理模式就是给某一个对象创建一个代理对象,而由这个代理对象控制对原对象的引用,而创建这个代理对象就是可以在调用原对象是可以增加一些额外的操作。下面是代理模式的结...

Spring IoC实现解析

Spring概述,容器、Bean加载及应用原理

将Spring的核心分为IoC容器和AOP模块,IoC容器用来管理POJO对象和它们之间的耦合关系,属于Spring最核心的模块,AOP则以动态和非侵入式的方式来增强服务的功能,分为两篇文章分别详细介绍其原理。 Spring的设计理念和整体架构 Spring发展历史 Spring是于2003年兴起的一个轻量级Java开源框架,为了解决企业应用开发的复杂性而创建的。相比J2EE规...

ThreadLocal那点事儿

ThreadLocal

ThreadLocal详解 ThreadLocal,直译为“线程本地”或“本地线程”,如果你真的这么认为,那就错了!其实,它就是一个容器,用于存放线程的局部变量,我认为应该叫做 ThreadLocalVariable(线程局部变量)才对,真不理解为什么当初 Sun 公司的工程师这样命名。 早在 JDK 1.2 的时代,java.lang.ThreadLocal 就诞生了,它是为了解决多线...

深入理解JVM之高效并发

Java内存模型与线程、线程安全与锁优化

第十二章 Java内存模型与线程 多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。 硬件的效率与一致性 由于计算机的存储设备与处理器的运算能力之间有几个数量级的...

深入理解JVM之虚拟机执行子系统

类文件结构、ClassLoader

第六章 类文件结构 Java一次编写,到处运行,跨平台以及JVM上支持多种语言,其基础都是虚拟机和字节码的存储格式,统一编译为Class文件。 Class类文件的结构 Class文件是一组以8位字节为基础单位的二进制流,各个数据项严格按照顺序紧凑地排列在Class文件中,中间没有添加任何分隔符,当遇到需要占用8位字节以上空间的数据项时,则按照高位在前分割成若干8位字节存储。根据JVM规...

深入理解JVM之自动内存管理

内存管理、内存分配、垃圾收集器、性能与调优

第二章 Java内存区域与内存溢出异常 运行时数据区域 程序计数器:较小的内存空间,指向当前线程所执行的字节码,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器完成。同一时刻,一个处理器(多核处理器的一个内核)只会执行一条线程中的指令,各条线程之间的计数器互不影响,独立存储,这类内存成为线程私有的内存。如果线程正在执行Java方法,计数器记录的是正在执行的虚拟...

TCP协议详解

Transmission Control Protocol 传输控制协议;User Datagram Protocol 用户数据报协议

TCP的那些事儿 我们知道TCP在OSI七层模型中的第四层:传输层(段 segment),IP在第三层:网络层(包 packet),ARP在第二层:数据链路层(帧 frame)。所以,程序的数据首先会打到TCP的Segment中,然后TCP的Segment会打到IP的Packet中,然后再打到以太网Ethernet的Frame中,传到对端后,各个层解析自己的协议,然后把数据交给更高层的协议...

互联网协议概览

Internet Protocol Suite

OSI七层模型及TCP/IP四层模型 OSI七层模型:是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。它是一个七层的、抽象的模型,不仅包括一系列抽象的术语或概念,也包括具体的协议。 TCP/IP四层模型:是计算机网络的祖父ARPANET和其后继的因特网使用的参考模型。是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。 OSI七层模型和TCP/IP...