前言
因應近期專案需要將 MySQL 資料庫轉換成 PostgreSQL,我選擇使用 pgloader
作為轉換工具,但由於 Ubuntu 22.04 預設套件庫中沒有支援的版本,因此這篇紀錄手動安裝 pgloader 3.6.9
的過程,並解決依賴問題。
專案將 Laravel 的 QUEUE_CONNECTION
從 database
切換到 redis
,並透過 Supervisor 背景執行 queue worker。初始設定中,Redis driver 預設 retry_after
為 90 秒,導致工作常在執行 90 秒後被重新派發,並因多次重試而拋出 MaxAttemptsExceededException
。
log大致如下:1
production.ERROR: App\Jobs\getApiCargoFormApiCompanion has been attempted too many times or run too long. The job may have previously timed out.
以下整理兩種解法。