我应该多久关闭一次数据库连接?

mcu*_*ulp 6 php mysql database optimization

目前,我正在我的应用初始化中打开数据库连接.它是一个相当小的应用程序,PHP,如果这是相关的.

我应该连接数据库,进行调用,然后为我编写的每个数据库函数关闭并重复此过程吗?

例如,我有以下函数从我的应用程序初始化中获取$ db变量.

function get_all_sections()
{
    global $db;
    $sql = 'select * from sections'; 

    if (!$db->executeSQL($sql, $result))
    {
        throw new Exception($db->getDatabaseError());
        exit();
    }

    $sections = array();

    for ($i = 0; $i < $db->numberOfRows($result); $i++)
    {
        $sections[] = new Section($db->fetchArray($result, MYSQLI_ASSOC));
    }

    return $sections;
}
Run Code Online (Sandbox Code Playgroud)

如果我打开连接然后在我获取行后关闭它会更好吗?这似乎是许多打开和关闭的连接.

mr-*_*-sk 5

如果您在(http://en.wikipedia.org/wiki/Connection_pool)上有连接池,则可以在需要时获取新连接.但是,我会说习惯将任何资源视为"有限",如果你打开数据库句柄,请尽可能长时间保持它.

  • 我总是以其他方式听取建议:*始终尽快关闭数据库连接*. (2认同)