在vagrant的虛擬機 OR mac的valet上,laravel運行速度慢

laravel運行速度在某次升級之後,變得特別慢。本地開發會出現這樣的問題,遠程服務器上就沒有。

表現爲:第一次登陸後,正常速度,可閒置一會後再刷新網頁,變得奇慢無比。

解決:

打開php-fpm的慢日誌,發現問題定位到 db:connect 上,是數據庫連接佔用了過多的時間。於是,

config/database.php 寫了以下 PDO (options=>…)的參數:

        'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'forge'),
            'username' => env('DB_USERNAME', 'forge'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => 'e_',
            'strict' => true,
            'engine' => null,
            'options' => [
                PDO::ATTR_PERSISTENT => false,
                PDO::ATTR_TIMEOUT => 60 * 3,
            ]

結果,登陸之後閒置10分鐘後再刷新網頁,無卡頓。速度回覆正常。

後記:提高虛擬機掛載硬盤的IO速度,可參考
https://blog.csdn.net/shilei_zhang/article/details/72811274

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章