我有适用于Android,Windows Phone和iOS应用的PHP REST API。 API的响应始终是JSON。我们使用DataBase类来管理PDO连接和CRUD操作。有时我们遇到以下错误Message: SQLSTATE[42000] [1203] User my_user already has more than 'max_user_connections' active connections
。
我发现了一些建议将PDO对象变量设置为null的指令,例如$pdo = null
或unset($pdo)
。所以,我在我的DataBase类中创建了一个析构函数方法来取消设置我的PDO实例:
public function __destruct(){
$this->pdo = null;
unset($this->pdo);
}
但有时我又得到了错误。有人能帮助我吗?
答案 0 :(得分:2)
你对连接背景有什么用?你使用连接池吗?
查看PHP文档主题" Connections and Connection management"
注意:强>
如果您正在使用PDO ODBC驱动程序并且您的ODBC库支持 ODBC连接池(unixODBC和Windows是两个;有 可能更多),然后建议您不要使用持久性PDO 连接,而是将连接缓存留给ODBC 连接池层。 ODBC连接池与。共享 该过程中的其他模块;如果告诉PDO缓存连接, 然后该连接永远不会返回到ODBC连接 池,导致为服务创建其他连接 那些其他模块。
希望这会有所帮助。