因为一个小bug,导致项目在某个晚上向mysql发送了大量的连接请求,同时mysql服务器的dns出现问题,导致反解超时。最后活活的把mysql服务器拖挂了。
最后bug修复了,并研究了一下增加 mysql连接池的办法。
这两天搜了一下,发现ThinkPHP文档里没有连接池的相关文档。所以自己研究了下代码。
循环从mysql连接池中获取连接,不需要重复创建新的连接。
参考配置修改:可以参考下面的文章
防止访问量过大,把连接数占满了<?php
/**
* @author xuleyan
* @title mysql类
*/
class DbHelper{
//连接池
private $_pools = [];
//连接池大小
const POOLSIZE = 5;
const USERNAME = "root";
const PASSWORD = "root";
const HOST = "127.0.0.1";
const DB = "test";
public function __construct()
{
$db = self::DB;
$username = self::USERNAME;
$password = self::PASSWORD;
$host = self::HOST;
//持久化连接
$presistent