本文件將講解如何管理與 WhatsApp Business API 用戶端關聯的各種不同類型資料和資料庫。
處理由 Docker 容器產生及使用的持續性資料時,磁碟區是首選的機制。WhatsApp Business API 用戶端必須要有一個 Docker 媒體磁碟區。在安裝期間運行 docker-compose
指令時,系統會自動建立此磁碟區。
Docker 磁碟區支援在遙距主機或雲端供應商上儲存磁碟區。您可以在任何現有資料中心檔案共用解決方案中設定媒體磁碟區。請確保所有網頁應用程式和核心應用程式容器均擁有此磁碟區的讀取/寫入權限。如要查看或編輯此磁碟區路徑,請編輯 docker-compose.yml
檔案。
名稱 | 說明 |
---|---|
媒體磁碟區 |
|
WhatsApp Business API 用戶端可以使用 MySQL 或 PostgreSQL 來儲存資料。
安裝 WhatsApp Business API 用戶端時,您可以在 db.env
檔案中設定以下環境變數,以配置資料庫設定。核心應用程式和網頁應用程式會在連接至資料庫時使用這些環境變數。
資料庫設定 | 環境變數 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WA_DB_NAME_PREFIX
— 可在安裝 WhatsApp Business API 用戶端時用於為建立的所有資料庫加上前綴。您可以使用這個變數,在同一個資料庫主機中運行多組 WhatsApp Business API 資料庫。WA_DB_CONNECTION_IDLE_TIMEOUT
(僅由 MySQL 支援)— 您可在啟動核心應用程式時設定此環境變數(以毫秒作為單位),從而為您的 MySQL 資料庫設定閒置逾時時限。之後,MySQL 伺服器便會關閉任何閒置了設定時長的資料庫連接。以下建議可用於管理與 WhatsApp Business API 用戶端關聯的資料庫。
需要 | 建議 |
---|---|
大型資料庫升級 | 大型資料庫即 |
基於 API 呼叫的垃圾回收 |
詳情請參閱「服務」文件。 |
記錄輪替指令碼位於核心應用程式和網頁應用程式容器內部。
網頁應用程式容器內的記錄輪替指令碼:
/var/log/whatsapp/archive
核心應用程式容器內的記錄輪替指令碼:
/var/log/whatsapp/archive
在核心應用程式中,系統只會在每個記錄檔案大小超過 15MB 時,才會建立新的記錄檔案。舊記錄檔案無法自動移除。
建議您定期(如每日)運行以下清除指令碼,為所有網頁應用程式、核心應用程式和主節點(在多點連線設定的情況下)容器執行記錄輪替。我們建議您在主機配置一個 Cronjob,於所有正在運行的 WhatsApp Business API 容器和非高峰時段執行。定期觸發清除指令碼可讓您管理記錄檔案所佔用的磁碟空間。
docker exec your-container-name /opt/whatsapp/bin/cleanup.sh