Este documento explica como gerenciar os diversos tipos de dados e bancos de dados relacionados ao cliente da WhatsApp Business API.
Os volumes são o mecanismo preferencial para persistir dados gerados e usados pelos contêineres do Docker. O cliente da WhatsApp Business API necessita de um volume do Docker por mídia. Esse volume será criado automaticamente durante a execução dos comandos docker-compose
na instalação.
Os volumes do Docker podem ser armazenados em hosts remotos ou em provedores na nuvem. É possível configurar o volume de mídia em qualquer solução para compartilhamento de arquivos de data center. Verifique se os contêineres do Webapp e do Coreapp têm acesso de leitura/gravação. Para visualizar ou editar o caminho do volume, edite o arquivo docker-compose.yml
.
Nome | Descrição |
---|---|
Volume de mídia |
|
O cliente da WhatsApp Business API pode usar o MySQL ou o PostgreSQL para armazenar dados.
Você pode definir as configurações do banco de dados usando as variáveis de ambiente a seguir no arquivo db.env
ao instalar o cliente da WhatsApp Business API. Essas variáveis de ambiente serão usadas pelo Coreapp e o Webapp ao se conectarem ao banco de dados.
Configuração de banco de dados | Variável de ambiente |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
WA_DB_NAME_PREFIX
— pode ser usado para prefixar todos os bancos de dados criados quando o cliente da API do WhatsApp Business é instalado. Essa opção pode ser usada para gerar vários conjuntos de bancos de dados da WhatsApp Business API no mesmo host de banco de dados.WA_DB_CONNECTION_IDLE_TIMEOUT
(compatível somente com o MySQL): ao configurar essa variável de ambiente enquanto inicia o Coreapp, você poderá definir o tempo ocioso do seu banco de dados MySQL. O servidor do MySQL encerrará todas as conexões com bancos de dados que ficarem ociosas pelo tempo determinado.Estas são recomendações para gerenciar o banco de dados associado ao seu cliente da WhatsApp Business API.
Problema | Recomendações |
---|---|
Fazer uma atualização com um grande banco de dados | Um banco de dados é considerado grande quando tem mais de 2 milhões de linhas na tabela |
A partir da | Use o parâmetro de coleta automática de lixo para garantir que seu banco de dados opere com estabilidade fazendo uma limpeza periodicamente. Consulte a documentação Configurações do aplicativo para obter mais informações sobre os parâmetros |
Configuração de coleta automática de lixo |
|
Coleta de lixo baseada em chamadas à API |
Consulte a documentação Serviços para obter mais informações. |
Um script de rotação de registro acompanha os contêineres do Coreapp e do Webapp.
O script de rotação de registro no contêiner do Webapp:
/var/log/whatsapp/archive
.O script de rotação de registro no contêiner do Coreapp:
/var/log/whatsapp/archive
.No Coreapp, um novo arquivo de registro só é criado quando o tamanho exceder 15 MB por arquivo de registro. Os arquivos de registro antigos não são removidos automaticamente.
Recomendamos executar o script de limpeza abaixo de maneira periódica (diariamente, por exemplo) para fazer a rotação de registros em todos os contêineres do Webapp, do Coreapp e do Master (no caso de configuração de multiconexão). É melhor configurar um cronjob no host para que funcione em todos os contêineres em execução da WhatsApp Business API e seja executado durante as horas de menor movimento. Invocar o script de limpeza periodicamente manterá o espaço de disco consumido por arquivos de registro sob controle.
docker exec your-container-name /opt/whatsapp/bin/cleanup.sh