
读书笔记
文章平均质量分 92
本兮言
“任何事情,没有坚持3个月,就没有发言权!没有坚持3年,就不能说自己懂!没有坚持7年,就不可能是专家!没有坚持10年以上,就不会拥有权威!没有坚持一辈子,就不可能有所成就!选择自己真正想做的事情,每天重复做,能坚持下来的人,定会成为某一领域的领航者。成功没有捷径,坚持才能成功!”
展开
-
读书笔记:高性能PHP应用开发 2019.3.4-至今
基准测试技术 1.PHP应用程序栈2.定义请求/响应生命周期 如图,一个简单的用户HTTP请求,它想Web服务器请求获取内容,依次经过用户的主路由器(如果有的话)、ISP网关和域名服务器(DNS),并且在DNS中会查找与请求的域名相关联的IP,然后到达具有指定IP的Web服务器,并最终请求Web程序生成特点内容 一旦到达Web服务器之后,通过获取并格式化用户请求数据来...原创 2019-03-05 15:08:12 · 321 阅读 · 0 评论 -
读书笔记:Mysql实战45讲 (22-35讲)
22、MySQL有哪些 饮鸩止渴 提高性能的办法? 场景: 业务高峰期,生产环境的MySQL压力太大,没法正常响应,需要短期内、临时性地提高一些性能。但,如果是无损的方案的话,肯定不需要等到这个时候才上场 短连接风暴: 正常的短连接模式就是连接到数据库,执行很少的SQL语句就断开,下次需要的时候再建立连接的过程,成本是很高的。除了正常的网络连接三次握手外,还要...原创 2019-04-13 15:34:42 · 3483 阅读 · 0 评论 -
读书笔记:Mysql实战45讲 (1-10讲)
总结一下:这本书都讲解了那些知识点:增、删、改、查 底层实现和优化索引:底层数据结构实现、聚簇索引(主键索引)、二级索引(索引、联合索引、前缀索引、唯一索引)使 用方法和底层实现Mysql锁的使用:表锁、行锁、全局锁 事务MySQL上线后的快速优化(饮鸩止渴)的办法MySQL主从一致和高可用优化解决办法MySQL的语法:count,join,o...原创 2019-04-02 14:56:31 · 1243 阅读 · 0 评论 -
读书笔记:redis开发与运维 集群篇
集群: Redis Cluster是Redis分布式解决方案 主要解决了单机内存、并发(OPS)、流量等瓶颈,采用Cluster架构方案达到负载均衡的目的,比如虽然redis官网说10万/s条命令,但是有些业务需要100万/每秒,机器内存16-256G但是业务需要500G, 数据分布: 分布式数据首先要解决把整个数据集按照分区规则映射到多个节点的问题常见的分区规...原创 2019-04-02 15:56:42 · 650 阅读 · 0 评论 -
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 · 310 阅读 · 1 评论 -
读书笔记:redis开发与运维 基础篇
redis特性1>速度快:redis所有数据都是存放在内存中,是redis速度快的主要原因,是有c编写,一般来说用c编写的程序距离操作系统近,执行速度更快,非阻塞I/O,使用epoll作为I/O多路复用的技术实现,不再网路I/O上浪费过多时间,使用单线程架构,预防了多线程可能产生竞争的问题,对于服务端开发来说,锁和线程切换通常是性能杀手(但是单线程有一个问题就是每个命令执行时间有要...原创 2019-03-18 19:29:38 · 2486 阅读 · 1 评论 -
MySQL系统架构 读自《MySQL性能调优与架构设计》
一、MySQL逻辑模块组成 mysql可以看成是二层架构,第一层叫SQLLayer,这一部分主要功能是完成mysql数据库系统处理底层数据之前的所有的准备工作,包括权限判断、sql解析、执行计划优化、querycache的处理等; 第二层是存储引擎层(StorageEngineLayer),这一层才是数据库系统数据存取操作的实现,是由多种存储引擎共同完成。看起来结构简单,...原创 2019-03-18 15:15:00 · 368 阅读 · 0 评论 -
读书笔记:MySql性能调优与架构设计
数据库优化: 需求和架构及业务实现优化:55% Query语句的优化:30% 数据库自身的优化:15%mysql锁定机制:锁机制的实现直接影响数据库的处理并发能力和性能,并且是否保证数据的一致性而各种共享资源在被并发访问变得有序所设计的一种规则 mysql:各引擎使用三种类似(级别)的锁定机制:行级锁、页级锁和表级锁 行级锁定:锁定...原创 2019-03-20 10:57:43 · 616 阅读 · 0 评论 -
整理自《高性能 MySQL》
存储引擎1. InnoDBInnoDB 是 MySQL 的默认事务型引擎,只有在需要 InnoDB 不支持的特性时,才考虑使用其它存储引擎。采用 MVCC 来支持高并发,并且实现了四个标准的隔离级别,默认级别是可重复读。表是基于聚簇索引建立的,它对主键的查询性能有很高的提升。内部做了很多优化,包括从磁盘读取数据时采用的可预测性读,能够自动在内存中创建 hash 索引以加速读操作...原创 2018-03-03 13:52:25 · 403 阅读 · 0 评论 -
读书笔记:图解HTTP 12.1~12.23
HTTP/0.9 只有一个命令GET 没有HEADER等描述数据的信息 服务器发送完毕,就关闭TCP连接HTTP/1.0 增加了POST DELETE等很多命令,增加了status code (描述服务端请求某一次请求之后的状态)和header(发送和请求的相关数据的描述和这些数据如何进行操作的一个方法)增加了 多字符集支持、多部分发送、权限、缓存等HTTP/1.1...原创 2018-11-30 17:40:48 · 323 阅读 · 0 评论 -
读书笔记:图解TCP/IP
第二章 TCP/IP基础知识20世纪90年代,ISO开展OSI这一国际标准协议的标准化进程,然而OSI协议并没有的到普及,真正广泛使用的是TCP/IP协议,究其原因,是由TCP/IP的标准化所致,TCP/IP的标准化中有其他协议的标准化没有的要求,这就是让TCP/IP更迅速地实现和普及的的原动力,而OSI未能达到普及,主要原因在于未能尽早的指定可行性比较强的协议,未能提出对应技术快速革新的协...原创 2018-10-26 18:24:28 · 1738 阅读 · 0 评论 -
读书笔记:深入理解PHP高级技巧、面向对象、核心技术 一 前六章
1.模块化一个Web网站 创建配置文件:定义常量、建立站点范围内的设置、创建用户定义函数、管理错误 例如:判断该脚本运行在测试环境还是真实运行的服务器 $host=substr($_SERVER['HTTP_HOST'],0,5); if(in_array($host,array('local','127.0','192.1'))){ $local=T...原创 2019-01-14 14:39:31 · 414 阅读 · 0 评论 -
读书笔记: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 · 833 阅读 · 0 评论 -
读书笔记:深入理解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 · 272 阅读 · 0 评论 -
读书笔记:PHP核心技术与最佳实践
第一章 面向对象思想的核心概念 面向对象是什么:面向对象(OOP)是一种程序设计范型,同事也是一张程序开发方法。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和可扩展性 面向过程、面向对象以及函数式编程呗称为编程语言中的三大范式(前两者同属于命令式编程) 类是对象的抽象组织,对象是类的具体存在 对象就是一堆数据,既然如此,可以把一个对象存储起来...原创 2019-04-15 13:06:40 · 2563 阅读 · 0 评论