Yii2 主从 数据库
2016-07-05 15:57
477 查看
配置方法 参考资料:http://www.linuxidc.com/Linux/2015-07/120134.htm
读写分离(Read/Write Splitting)。
1.原理:让主数据库(master)处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库(slave)处理SELECT查询操作。
2.好处:备份数据库,分担数据库压力,承受更大的访问量。
是怎么分配主从数据库的:
Yii2\db\Command.php prepare 方法
Yii2\db\Schema.php isReadQuery 方法
读写分离(Read/Write Splitting)。
1.原理:让主数据库(master)处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库(slave)处理SELECT查询操作。
2.好处:备份数据库,分担数据库压力,承受更大的访问量。
是怎么分配主从数据库的:
Yii2\db\Command.php prepare 方法
if ($forRead || $forRead === null && $this->db->getSchema()->isReadQuery($sql)) { $pdo = $this->db->getSlavePdo(); } else { $pdo = $this->db->getMasterPdo(); }
Yii2\db\Schema.php isReadQuery 方法
public function isReadQuery($sql) { $pattern = '/^\s*(SELECT|SHOW|DESCRIBE)\b/i'; return preg_match($pattern, $sql) > 0; }
相关文章推荐
- PHP 框架 Yaf 学习笔记
- 解决zend studio代码无法自动提示的3个方法
- php js rsa
- 自己动手写PHP MVC框架
- CSRF的防御实例(PHP)
- php中的错误处理
- php 解决和避免form表单重复提交的方法
- matplotlib--Legend
- 内容提供者:ContentProvider
- php编程安全指南
- yii2.0 修改控制器默认方法记录 (basic版本)
- Sublime Text 如何连接 FTP/SFTP ——图文详细教程
- 单例模式PHP
- header("Location:login.php")
- 修改PHP上传文件大小限制的方法
- php调用mysql存储过程的详解
- php 打包下载zlib函数
- Composer安装文档
- php md5 16位 问题
- php缓存技术总结