- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 读书笔记:MySql性能调优与架构设计
数据库优化: 需求和架构及业务实现优化:55% Query语句的优化:30% 数据库自身的优化:15%mysql锁定机制:锁机制的实现直接影响数据库的处理并发能力和性能,并且是否保证数据的一致性而各种共享资源在被并发访问变得有序所设计的一种规则 mysql:各引擎使用三种类似(级别)的锁定机制:行级锁、页级锁和表级锁 行级锁定:锁定...
2019-03-20 10:57:43 574
转载 MySQL中的读锁和写锁
转载自http://www.hollischuang.com/archives/1728在数据库的锁机制中介绍过,数据的锁主要用来保证数据的一致性的,数据库的锁从锁定的粒度上可以分为表级锁、行级锁和页级锁。在我的博客中重点介绍过MySQL数据库的行级锁。这篇文章主要来介绍一下MySQL数据库中的表级锁。本文提到的读锁和写锁都是MySQL数据库的MyISAM引擎支持的表锁的。而对于...
2019-03-20 10:50:39 712
原创 读书笔记:redis开发与运维 基础篇
redis特性1>速度快:redis所有数据都是存放在内存中,是redis速度快的主要原因,是有c编写,一般来说用c编写的程序距离操作系统近,执行速度更快,非阻塞I/O,使用epoll作为I/O多路复用的技术实现,不再网路I/O上浪费过多时间,使用单线程架构,预防了多线程可能产生竞争的问题,对于服务端开发来说,锁和线程切换通常是性能杀手(但是单线程有一个问题就是每个命令执行时间有要...
2019-03-18 19:29:38 2396 1
原创 MySQL系统架构 读自《MySQL性能调优与架构设计》
一、MySQL逻辑模块组成 mysql可以看成是二层架构,第一层叫SQLLayer,这一部分主要功能是完成mysql数据库系统处理底层数据之前的所有的准备工作,包括权限判断、sql解析、执行计划优化、querycache的处理等; 第二层是存储引擎层(StorageEngineLayer),这一层才是数据库系统数据存取操作的实现,是由多种存储引擎共同完成。看起来结构简单,...
2019-03-18 15:15:00 354
转载 mysql执行sql语句过程
流程概述 mysql得到sql语句后,大概流程如下: 1.sql的解析器:负责解析和转发sql 2.预处理器:对解析后的sql树进行验证 3.查询优化器:得到一个执行计划 4.查询执行引擎:得到数据结果集 5.将数据放回给调用端。流程图如下所示:回到顶部分发器及缓存阶段 首先,如果系统的缓存功能开启着的话,sql语句进入mysql后,sql...
2019-03-14 11:32:16 285
转载 MySql 执行计划
1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。2)、select_type列常见的有:A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个B:primary:一个需要union操作或者含有子查询的...
2019-03-14 11:31:06 775
原创 Go学习日记 :基础 第一章 语法
关于Go的知识:默认情况下都会使用静态链接,编译完的go程序都是二进制文件,有非常好的便捷性,可以拷贝到不同的机器上运行并且go与其他主流语言相比,它的关键字比较少只有25个关键字,c有37个,c++的84个与其他语言的差异: Go中main函数不支持任何返回值 通过os.Exit来返回状态func main() { //func main () int{ fmt...
2019-03-13 16:50:21 283 1
原创 读书笔记:高性能PHP应用开发 2019.3.4-至今
基准测试技术 1.PHP应用程序栈2.定义请求/响应生命周期 如图,一个简单的用户HTTP请求,它想Web服务器请求获取内容,依次经过用户的主路由器(如果有的话)、ISP网关和域名服务器(DNS),并且在DNS中会查找与请求的域名相关联的IP,然后到达具有指定IP的Web服务器,并最终请求Web程序生成特点内容 一旦到达Web服务器之后,通过获取并格式化用户请求数据来...
2019-03-05 15:08:12 291
原创 读书笔记:深入理解PHP高级技巧、面向对象、核心技术 二 (19.1.21-19.2.10)
设计模式1.单例模式:创建性模式,会限制应用程序,使其职能创建某一特定类类型的一个单一的实例 我们可以使用一个静态属性来保证对于一个特定的类来说只存在一个单一的实例 class Sc{ static private $_instance=NULL; static function getInstance(){ if(self::$_instance==NU...
2019-03-04 15:48:03 245
原创 读书笔记:PHP和MySQL高性能应用开发 (2019.2.20-2019.3.4)
1.emtpy、isset、is_null的区别isset()检测一个变量是否已声明且值不为NULL,并且声名一个变量没有赋值也算false,但是空字符串或者空格为true empty()用来检测一个变量是否为空,当变量为空字符串、false、空数组、null、0、‘’以及被unset删除后的变量 is_null()判断变量内容是否是null,是isset()函数的反函数,区别是i...
2019-03-04 15:46:10 761
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人