摘要:
一、MongoDB再入门 认识文档数据库MongoDB MongoDB是一个以JSON为数据模型的文档数据库. 主要特点: 建模为可选,JSON数据模型比较适合开发者,横向扩展可以支撑很大数据量和并发. 版本变迁: 0.x起步阶段; 1.x支持复制集合分片集; 2.x更丰富的数据库功能; 3.xWi 阅读全文
摘要:
事务的基本要素(ACID) 原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,就像化学中学过的原子,是物质构成的基本单位。 一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 。比如A向B转账,不可能A扣了钱,B却没收到。 隔离性(Isol 阅读全文
摘要:
主键索引和非主键索引 主键索引的叶子节点存的是整行数据。在 InnoDB 里,主键索引也被称为聚簇索引 非主键索引的叶子节点内容是主键的值。在 InnoDB 里,非主键索引也被称为二级索引 回表 普通索引查询方式,则需要先搜索其索引树,得到主键索引的值为,再到主键索引树搜索一次。这个过程称为回表。 阅读全文
摘要:
InnoDB支持事务,MyISAM不支持 对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务; InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败; Inno 阅读全文
摘要:
性能提升: 1、JIT即时编译器。PHP8的JIT目前是在Opcache之中提供的,会做opcode层面的优化,比如俩条opcode合并为一条;在Opcache优化之后的基础上,结合Runtime的信息再次优化,直接生成机器码;JIT不是原来Opcache优化的替代,是增强;目前PHP8只支持x86 阅读全文
摘要:
存储变量的结构体变小,尽量使结构体里成员共用内存空间,减少引用,这样内存占用降低,变量的操作速度得到提升 字符串结构体的改变,字符串信息和数据本身原来是分成两个独立内存块存放,php7尽量将它们存入同一块内存,提升了cpu缓存命中率 数组结构的改变,数组元素和hash映射表在php5中会存入多个内存 阅读全文
摘要:
引用计数机制 每个php变量存在”zval”变量容器中,它除了包含变量的类型和值,还包含is_ref和refcount。 is_ref标识变量是引用变量还是普通变量,refcount表示指向这个zval变量容器的变量个数。 当引用计数refcount为0时,php就知道你不再使用这个对象,会释放其所 阅读全文