# Desempenho do servidor

O desempenho do servidor afeta diretamente a velocidade e a capacidade de resposta da aplicação WCPOS. O POS faz muitas chamadas à API REST, portanto **o tempo de resposta do servidor é o principal gargalo** — a velocidade do POS depende muito da qualidade da hospedagem. Este guia ajuda a monitorar, diagnosticar e otimizar o desempenho do servidor usando as métricas integradas e técnicas de solução de problemas.

## Requisitos mínimos do servidor[​](#minimum-server-requirements "Link direto para Requisitos mínimos do servidor")

Para um POS responsivo em produção, recomendamos pelo menos:

CPU

<!-- -->

: 4+ núcleos de CPU

RAM

<!-- -->

: 4 GB ou mais

PHP

<!-- -->

: PHP 7.4+ (8.x recomendado)

Banco de dados

<!-- -->

: MySQL 8.0+ ou MariaDB 11.x

Armazenamento

<!-- -->

: SSD ou NVMe

SSL

<!-- -->

: HTTPS é obrigatório — a API REST do WooCommerce não funcionará sem ele

Hospedagem compartilhada geralmente não é suficiente

A hospedagem compartilhada frequentemente tem poucos workers PHP e pouca memória para cargas de trabalho de POS, que fazem muitas chamadas de API simultâneas. Para uso de POS em produção, uma **VPS ou hospedagem gerenciada de WordPress** é altamente recomendada. A hospedagem gerenciada do `WordPress.com` também é conhecida por ter problemas de compatibilidade com a API REST (alguns usuários veem apenas 9–10 produtos de catálogos grandes) — recomenda-se `WordPress.org` auto-hospedado para compatibilidade total.

### Pilha de otimização validada pela comunidade[​](#community-validated-optimisation-stack "Link direto para Pilha de otimização validada pela comunidade")

Usuários relatam o melhor desempenho de POS com esta combinação:

* **MariaDB 11.4** (mais rápido que MySQL para cargas de trabalho do WooCommerce)
* **HPOS ativado** (veja abaixo)
* Cache de objetos **LiteSpeed ou Redis**
* Armazenamento **NVMe**
* **PHP OPcache** ativado

## Erros 503[​](#503-errors "Link direto para Erros 503")

Erros 503 são sempre do lado do servidor

Um `503 Service Unavailable` **não é um bug do POS** — significa que o servidor não conseguiu processar a requisição. Verifique:

1. Carga do servidor e recursos disponíveis
2. Workers do PHP (podem estar esgotados)
3. Limite de memória do PHP — aumente para **256 MB ou mais**
4. Logs do servidor do seu provedor de hospedagem (entre em contato com o provedor; ele consegue ver o que a aplicação não consegue)

## Compatibilidade com versões do WooCommerce[​](#woocommerce-version-compatibility "Link direto para Compatibilidade com versões do WooCommerce")

Uma atualização do WooCommerce pode ocasionalmente interromper o POS. Sempre atualize o WooCommerce primeiro em um [site de testes](/pt-BR/support/troubleshooting/plugin-conflicts.md#before-you-start-use-a-staging-site) e mantenha o WCPOS atualizado para que ele inclua as correções de compatibilidade mais recentes.

Problemas conhecidos:

* **WooCommerce 10.5.0** — interrompeu o carregamento de produtos no POS (sintoma: apenas \~10 produtos são exibidos; a leitura de código de barras e a pesquisa param de funcionar) e introduziu um cache experimental de produtos que pode causar **inchaço de postmeta** e esgotamento de memória. **Correção:** atualize o WCPOS para a versão mais recente (ela inclui a correção e uma migração de limpeza) ou reverta o WooCommerce para [10.4.3](https://downloads.wordpress.org/plugin/woocommerce.10.4.3.zip).

Se uma atualização do WooCommerce interromper o POS, reverta o WooCommerce para a versão anterior (pela guia **Avançado** na página do plugin no WordPress.org) e relate o problema.

## Como entender as métricas do servidor[​](#understanding-server-metrics "Link direto para Como entender as métricas do servidor")

O WCPOS coleta automaticamente métricas de desempenho do servidor em cada operação de busca de dados (produtos, pedidos, clientes etc.). Essas métricas podem ser visualizadas na tela [Registros](/pt-BR/support/logs.md).

### Métricas típicas do servidor[​](#typical-server-metrics "Link direto para Métricas típicas do servidor")

```
{

  "total": "24692",

  "execution_time": "76.64 ms",

  "server_load": "[15.20605469,16.16357422,16.76806641]"

}
```

**Detalhamento:**

* **`total`** - Número de registros processados (24,692 IDs de produto)
* **`execution_time`** - Tempo necessário para concluir a operação (76.64 milissegundos)
* **`server_load`** - Médias de carga do servidor por 1, 5 e 15 minutos

## Carga do servidor explicada[​](#server-load-explained "Link direto para Carga do servidor explicada")

A carga do servidor representa a carga média do sistema em diferentes períodos:

* **Primeiro valor** - média de 1 minuto (15.21)
* **Segundo valor** - média de 5 minutos (16.16)
* **Terceiro valor** - média de 15 minutos (16.77)

### Interpretação da carga[​](#load-interpretation "Link direto para Interpretação da carga")

Os valores de carga do servidor podem ser enganosos e devem ser interpretados com cuidado:

Os valores de carga podem ser enganosos

As médias de carga do servidor nem sempre têm correlação direta com o desempenho. Um servidor com valores de carga altos (15+) ainda pode responder muito bem se tiver recursos suficientes e estiver bem otimizado. **Concentre-se nos tempos de execução, não apenas nos valores de carga.**

**Diretrizes gerais:**

* **Carga em relação aos núcleos da CPU** - uma carga de 8.0 em um servidor de 8 núcleos significa utilização total
* **Sustentada vs. temporária** - Picos breves são normais; carga alta sustentada pode indicar problemas
* **O desempenho importa mais** - Um servidor responsivo com carga alta é melhor do que um servidor lento com carga baixa

**O que observar:**

* **Tempos de execução aumentando** ao longo do tempo
* **Carga crescendo de forma consistente** sem explicação
* **Carga alta E tempos de execução lentos** juntos

## Parâmetros de desempenho[​](#performance-benchmarks "Link direto para Parâmetros de desempenho")

### Diretrizes de tempo de execução[​](#execution-time-guidelines "Link direto para Diretrizes de tempo de execução")

| Operação               | Bom     | Aceitável | Ruim     | Crítico |
| ---------------------- | ------- | --------- | -------- | ------- |
| **Busca de produtos**  | < 100ms | 100-500ms | 500ms-2s | > 2s    |
| **Criação de pedidos** | < 200ms | 200-800ms | 800ms-3s | > 3s    |

### Considerações sobre contagem de registros[​](#record-count-considerations "Link direto para Considerações sobre contagem de registros")

O tempo de execução deve escalar de forma razoável com a quantidade de registros:

```
// Good scaling examples

{"total": "100", "execution_time": "15.2 ms"}    // 0.15ms per record

{"total": "1000", "execution_time": "89.4 ms"}   // 0.09ms per record

{"total": "10000", "execution_time": "234.1 ms"} // 0.02ms per record



// Poor scaling examples

{"total": "100", "execution_time": "500.0 ms"}   // 5.0ms per record

{"total": "1000", "execution_time": "8000.0 ms"} // 8.0ms per record
```

## Diagnóstico de problemas de desempenho[​](#diagnosing-performance-issues "Link direto para Diagnóstico de problemas de desempenho")

### Etapa 1: Monitorar os registros[​](#step-1-monitor-the-logs "Link direto para Etapa 1: Monitorar os registros")

1. Abra **Registros** na gaveta de navegação
2. Execute a operação lenta (sincronizar produtos, criar pedido etc.)
3. Procure a entrada de registro correspondente
4. Expanda o contexto para ver as métricas

### Etapa 2: Analisar as métricas[​](#step-2-analyse-the-metrics "Link direto para Etapa 2: Analisar as métricas")

**Tempo de execução alto + carga alta no servidor = problema de recursos do servidor**

```
{

  "total": "5000",

  "execution_time": "3500.0 ms",

  "server_load": "[12.45, 11.23, 10.87]"

}
```

*Solução: aumente os recursos do servidor ou otimize a configuração do servidor*

**Tempo de execução alto + carga normal no servidor = problema de plugin/banco de dados**

```
{

  "total": "1000",

  "execution_time": "2800.0 ms",

  "server_load": "[1.23, 1.45, 1.67]"

}
```

*Solução: identifique plugins lentos ou otimize consultas ao banco de dados*

**Tempo de execução normal + Alta carga do servidor = Sobrecarga geral do servidor**

```
{

  "total": "2000",

  "execution_time": "150.0 ms",

  "server_load": "[8.90, 9.12, 8.45]"

}
```

*Solução: reduza a carga do servidor causada por outros processos ou aumente os recursos*

## Problemas comuns de desempenho[​](#common-performance-problems "Link direto para Problemas comuns de desempenho")

### 1. Recursos insuficientes do servidor[​](#1-insufficient-server-resources "Link direto para 1. Recursos insuficientes do servidor")

**Sintomas:**

* Carga do servidor consistentemente alta (> 4.0 na maioria dos servidores)
* Tempos de execução longos em todas as operações
* Tempos limite frequentes

**Soluções:**

* **Atualize a CPU** - Mais núcleos lidam melhor com solicitações simultâneas
* **Aumente a RAM** - Reduz a E/S de disco e melhora o cache
* **Use armazenamento SSD** - Melhora drasticamente o desempenho do banco de dados
* **Otimize as configurações do PHP** - Aumente memory\_limit, max\_execution\_time

### 2. Consultas lentas ao banco de dados[​](#2-slow-database-queries "Link direto para 2. Consultas lentas ao banco de dados")

**Sintomas:**

* Tempos de execução elevados com carga normal do servidor
* Busca de produtos/pedidos especialmente lenta
* Códigos de erro relacionados ao banco de dados nos logs

**Soluções:**

* **Ative o HPOS do WooCommerce** - A maior melhoria individual de desempenho do banco de dados
* **Use cache de objetos** - Redis ou Memcached, se disponível no seu provedor de hospedagem
* **Mantenha o WordPress atualizado** - As atualizações do core frequentemente incluem otimizações de banco de dados
* **Limite as revisões de posts** - Adicione `define('WP_POST_REVISIONS', 3);` ao wp-config.php

### 3. Interferência de plugins[​](#3-plugin-interference "Link direto para 3. Interferência de plugins")

**Sintomas:**

* Degradação súbita de desempenho após atualizações de plugins
* Operações específicas muito mais lentas do que outras
* Tempos de execução elevados com carga normal do servidor

**Solução de problemas:**

1. **Teste em ambiente de homologação** - Desative todos os plugins, exceto WooCommerce e WCPOS
2. **Meça a linha de base** - Registre os tempos de execução com o mínimo de plugins
3. **Ative gradualmente** - Adicione plugins um por um para identificar os responsáveis
4. **Verifique os ganchos dos plugins** - Procure plugins conectados às ações do WooCommerce

**Plugins problemáticos comuns:**

* Plugins de SEO pesados durante operações de produtos
* Sistemas complexos de gerenciamento de estoque
* Plugins de análise/rastreamento em tempo real
* Plugins personalizados mal codificados

### 4. Configuração do WordPress/WooCommerce[​](#4-wordpresswoocommerce-configuration "Link direto para 4. Configuração do WordPress/WooCommerce")

**Sintomas:**

* Desempenho inconsistente
* Erros relacionados à memória nos logs
* Painel administrativo lento

**Checklist de otimização:**

* **Versão do PHP** - Use PHP 8.0+ para obter melhor desempenho
* **WooCommerce HPOS** - Ative o Armazenamento de pedidos de alto desempenho (veja abaixo)
* **Cache do WordPress** - Ative o cache de objetos, se disponível
* **Configurações do WooCommerce** - Otimize os tamanhos das imagens dos produtos

### Armazenamento de pedidos de alto desempenho do WooCommerce (HPOS)[​](#woocommerce-high-performance-order-storage-hpos "Link direto para Armazenamento de pedidos de alto desempenho do WooCommerce (HPOS)")

Maior ganho de desempenho

**HPOS é uma das melhorias de desempenho mais significativas que podem ser feitas no WooCommerce.** Ele armazena pedidos em tabelas personalizadas do banco de dados em vez da tabela de posts do WordPress, melhorando drasticamente o desempenho para lojas com muitos pedidos.

**Benefícios:**

* **Consultas de pedidos mais rápidas** - Pedidos armazenados em uma estrutura otimizada de banco de dados
* **Menor carga no banco de dados** - Separa pedidos de posts/páginas
* **Melhor escalabilidade** - Lida com grandes volumes de pedidos com eficiência
* **Melhor desempenho administrativo** - Telas de gerenciamento de pedidos mais rápidas

**Como ativar:**

1. Acesse `WooCommerce > Configurações > Advanced > Features`
2. Ative "Armazenamento de pedidos de alto desempenho"
3. Siga o processo de migração

**Saiba mais:**

* [Documentação do WooCommerce HPOS](https://woocommerce.com/document/high-performance-order-storage/)
* [Guia de migração para HPOS](https://woocommerce.com/document/high-performance-order-storage/#section-3)

## Práticas recomendadas de monitoramento do servidor[​](#server-monitoring-best-practices "Link direto para Práticas recomendadas de monitoramento do servidor")

### 1. Verificações regulares de desempenho[​](#1-regular-performance-checks "Link direto para 1. Verificações regulares de desempenho")

* **Análises semanais** - Verifique os registros em busca de tendências de desempenho
* **Medições de referência** - Registre os tempos normais de execução
* **Monitoramento em horários de pico** - Monitore durante períodos de alto tráfego

### 2. Configure alertas de desempenho[​](#2-set-performance-alerts "Link direto para 2. Configure alertas de desempenho")

Monitore estes sinais de alerta:

* Tempos de execução > 1000ms de forma consistente
* Carga do servidor > 5.0 por períodos prolongados
* Erros frequentes de tempo limite nos logs

### 3. Planejamento de capacidade[​](#3-capacity-planning "Link direto para 3. Planejamento de capacidade")

Acompanhe as tendências de crescimento:

* **Crescimento da contagem de registros** - Produtos, pedidos, clientes
* **Degradação do desempenho** - Como o tempo de execução aumenta
* **Utilização de recursos** - CPU, memória, uso de disco

## Estratégias de otimização do servidor[​](#server-optimisation-strategies "Link direto para Estratégias de otimização do servidor")

### 1. Práticas recomendadas do WordPress/WooCommerce[​](#1-wordpresswoocommerce-best-practices "Link direto para 1. Práticas recomendadas do WordPress/WooCommerce")

**Ative o HPOS:**

* A melhoria de desempenho mais impactante para WooCommerce
* Consulte a seção sobre HPOS acima para obter detalhes

**Configuração do PHP (consulte seu provedor de hospedagem):**

```
memory_limit = 512M

max_execution_time = 300

max_input_vars = 3000
```

**Configuração do WordPress:**

```
// In wp-config.php - limit post revisions

define('WP_POST_REVISIONS', 3);



// Enable WordPress debug logging if needed

define('WP_DEBUG_LOG', true);
```

### 2. Otimizações no nível da hospedagem[​](#2-hosting-level-optimizations "Link direto para 2. Otimizações no nível da hospedagem")

**Cache de objetos:**

* Consulte seu provedor de hospedagem sobre a disponibilidade de Redis ou Memcached
* Muitos provedores de hospedagem gerenciada para WordPress fornecem isso automaticamente

**Versão do PHP:**

* Use PHP 8.0+ para obter melhorias significativas de desempenho
* A maioria dos provedores permite trocar a versão do PHP facilmente

**Recursos do servidor:**

* Garanta RAM adequada (mínimo de 1GB, preferencialmente 2GB+)
* O armazenamento SSD oferece desempenho de banco de dados muito melhor do que unidades tradicionais

## Observações específicas por hospedagem[​](#hosting-specific-notes "Link direto para Observações específicas por hospedagem")

Alguns provedores de hospedagem e CDNs precisam de configuração para permitir que o POS acesse a API REST do WooCommerce:

| Hospedagem / serviço           | Problema                                                                                                | Correção                                                                                                |
| ------------------------------ | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| **GoDaddy** (hospedagem)       | O firewall do site bloqueia chamadas da API REST para `/wp-json/` (erros como *"Received 'undefined'"*) | `Website Security > Firewall > Configurações > Access Control > Allow URL Paths` → adicione `/wp-json/` |
| **WP Engine** (hospedagem)     | A API REST deve ser ativada explicitamente                                                              | Ative a API REST; adicione os endpoints da API à lista de permissões no firewall, se necessário         |
| **Cloudflare** (CDN)           | Pode bloquear solicitações da API REST e armazenar respostas da API em cache                            | Verifique as regras de firewall; adicione uma regra de página para **ignorar o cache** em `/wp-json/*`  |
| **WordPress.com** (hospedagem) | Problemas de compatibilidade da API REST / carregamento de produtos (apenas 9 a 10 produtos aparecem)   | Use WordPress.org auto-hospedado para compatibilidade total                                             |
| **Hospedagem compartilhada**   | Poucos workers PHP / pouca memória para chamadas simultâneas do POS                                     | Migre para um VPS ou uma hospedagem WordPress gerenciada                                                |

Plugins de segurança (Wordfence etc.) podem bloquear a API REST de formas semelhantes — consulte [Conflitos de plugins](/pt-BR/support/troubleshooting/plugin-conflicts.md) para ver a lista completa e as correções.

### HTTP 414 — URI muito longo[​](#http-414-uri-too-long "Link direto para HTTP 414 — URI muito longo")

Carrinhos grandes, ou o token de acesso incluído no URL de checkout, podem exceder o limite de comprimento de URL do servidor (a solicitação de checkout usa `GET`). Isso pode variar conforme o navegador e ser agravado pelo cache do navegador.

**Solução alternativa:** limpe primeiro o cache do navegador e, em seguida, aumente o limite de comprimento de URL do servidor:

* **Apache:** `LimitRequestLine 65536` em `httpd.conf`
* **Nginx:** `large_client_header_buffers 4 65536;` em `nginx.conf`
* Se não houver acesso à configuração, solicite ao provedor de hospedagem que faça o ajuste.

## Quando buscar ajuda[​](#when-to-seek-help "Link direto para Quando buscar ajuda")

Entre em contato com o provedor de hospedagem ou com um desenvolvedor WordPress se:

* **Carga do servidor consistentemente > 8.0** apesar dos esforços de otimização
* **Tempos de execução > 5000ms** para operações simples
* **Erros de memória** aparecendo com frequência nos logs
* **Consultas ao banco de dados levando > 2 segundos** de forma consistente

Forneça a eles:

* Métricas do servidor dos seus logs
* Lista de plugins ativos
* Especificações do servidor (CPU, RAM, tipo de armazenamento)
* Versões do WordPress e WooCommerce

## Documentação relacionada[​](#related-documentation "Link direto para Documentação relacionada")

[RegistrosComo acessar e interpretar métricas do servidor](/pt-BR/support/logs.md)

[Desempenho do checkoutOtimize o processamento de pagamentos](/pt-BR/support/performance/checkout.md)

[Códigos de erroEntenda os códigos de erro relacionados ao desempenho](/pt-BR/error-codes/.md)

[Solução de problemasGuias gerais de solução de problemas](/pt-BR/category/troubleshooting.md)
