{"id":16742,"date":"2026-01-12T15:07:26","date_gmt":"2026-01-12T14:07:26","guid":{"rendered":"https:\/\/webhosting.de\/wordpress-autoload-wp-options-optimierung-databasefix\/"},"modified":"2026-01-12T15:07:26","modified_gmt":"2026-01-12T14:07:26","slug":"wordpress-autoload-wp-options-otimizacao-databasefix","status":"publish","type":"post","link":"https:\/\/webhosting.de\/pt\/wordpress-autoload-wp-options-optimierung-databasefix\/","title":{"rendered":"Carregamento autom\u00e1tico do WordPress: Porque \u00e9 que wp_options torna o seu site mais lento"},"content":{"rendered":"<p><strong>Carregamento autom\u00e1tico do WordPress<\/strong> carrega massas de op\u00e7\u00f5es da tabela wp_options na mem\u00f3ria com cada pedido de p\u00e1gina e, portanto, aumenta os requisitos de TTFB, CPU e RAM. Se demasiados dados carregados automaticamente se acumularem aqui, esta tabela tornar\u00e1 o seu s\u00edtio visivelmente mais lento.<\/p>\n\n<h2>Pontos centrais<\/h2>\n\n<p>Vou resumir os factos mais importantes para que possa avaliar imediatamente se as op\u00e7\u00f5es de carregamento autom\u00e1tico o est\u00e3o a atrasar. Em cada pedido, o WordPress carrega todas as entradas com autoload=yes, independentemente de serem necess\u00e1rias. Isto funciona como uma mochila invis\u00edvel que fica mais pesada com cada plugin instalado. A partir de um tamanho de autoload de cerca de 1 MB, o desempenho cai rapidamente, o que \u00e9 particularmente not\u00f3rio em hosts mais pequenos. Com alguns passos espec\u00edficos, posso reduzir permanentemente a carga e manter o <strong>wp_options<\/strong> limpo.<\/p>\n<ul>\n  <li><strong>Carga autom\u00e1tica<\/strong>Tudo o que tem autoload=yes \u00e9 guardado com cada pedido de p\u00e1gina.<\/li>\n  <li><strong>Tamanho cr\u00edtico<\/strong>TTFB aumenta acentuadamente a partir de ~1 MB; 2-3 MB \u00e9 considerado um intervalo de alarme.<\/li>\n  <li><strong>Condutor principal<\/strong>Plugins, transientes, registos e tarefas cron com defeito.<\/li>\n  <li><strong>Medi\u00e7\u00e3o<\/strong>O SQL\/WP-CLI mostra imediatamente o tamanho e o principal originador.<\/li>\n  <li><strong>solu\u00e7\u00e3o<\/strong>Limpar, carregar automaticamente para \u201en\u00e3o\u201c, subcontratar, verificar regularmente.<\/li>\n<\/ul>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/01\/wordpress-wpoptions-ladezeit-7642.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Porque \u00e9 que o carregamento autom\u00e1tico \u00e9 mais lento<\/h2>\n\n<p>As op\u00e7\u00f5es carregadas automaticamente acabam na mem\u00f3ria com cada pedido, independentemente de a p\u00e1gina precisar delas; \u00e9 exatamente isto que consome mem\u00f3ria. <strong>Recursos<\/strong>. Pequenos valores s\u00e3o quase impercept\u00edveis, mas com muitos plugins o total cresce rapidamente para centenas de kilobytes ou mesmo v\u00e1rios megabytes. A partir de cerca de 1 MB, vejo regularmente um aumento do TTFB, p\u00e1ginas de administra\u00e7\u00e3o mais lentas e mais picos de CPU. No alojamento partilhado, a carga multiplica-se porque os pedidos paralelos aumentam o <strong>base de dados wordpress<\/strong> adicionalmente. Quanto maior for o bloco de carregamento autom\u00e1tico, mais demorada \u00e9 a desserializa\u00e7\u00e3o e mais tempo o seu servidor perde antes do primeiro byte.<\/p>\n\n<h2>Como \u00e9 que o WordPress carrega internamente (alloptions e cache de objectos)<\/h2>\n\n<p>O WordPress combina todas as op\u00e7\u00f5es carregadas automaticamente num grande bloco. Com o primeiro pedido, este bloco \u00e9 carregado com uma \u00fanica consulta e armazenado sob a chave colectiva <em>todas as op\u00e7\u00f5es<\/em> \u00e9 armazenado na cache de objectos. Isto reduz o n\u00famero de consultas \u00e0 base de dados, mas n\u00e3o a quantidade de dados a processar: O bloco inteiro deve ser desserializado e mantido na mem\u00f3ria. Com um <em>Cache de objectos persistentes<\/em> (por exemplo, Redis ou Memcached), a carga da base de dados desaparece, mas os processos PHP ainda t\u00eam que descompactar os dados e mant\u00ea-los na RAM. Isso significa que um grande bloco de carregamento autom\u00e1tico tamb\u00e9m \u00e9 prejudicial se os dados vierem do cache - apenas o gargalo muda do banco de dados para a CPU e a RAM.<\/p>\n<p>Isto \u00e9 particularmente cr\u00edtico no caso de:<\/p>\n<ul>\n  <li><strong>elevado paralelismo<\/strong> (muitos pedidos simult\u00e2neos): Cada PHP worker carrega o bloco separadamente.<\/li>\n  <li><strong>tempos de processamento curtos<\/strong> (FPM\/Serverless): A sobrecarga \u00e9 incorrida novamente para cada novo processo.<\/li>\n  <li><strong>\u00c1rea de administra\u00e7\u00e3o e cron<\/strong>As caches s\u00e3o contornadas ou invalidadas com mais frequ\u00eancia, o bloco de carregamento autom\u00e1tico conta sempre.<\/li>\n<\/ul>\n\n<h2>Como encontrar os maiores infractores do carregamento autom\u00e1tico<\/h2>\n\n<p>Come\u00e7o com uma medida de tamanho diretamente na <strong>wp_options<\/strong>. Obtenho a soma atrav\u00e9s de SQL: <code>SELECT SUM(LENGTH(option_value)) AS autoload_size FROM wp_options WHERE autoload = 'yes';<\/code>. Os valores superiores a 1 MB s\u00e3o cr\u00edticos, a partir de 2-3 MB torna-se perigoso, especialmente com tr\u00e1fego. De seguida, ordeno por tamanho: <code>SELECT option_name, LENGTH(option_value) AS bytes FROM wp_options WHERE autoload = 'yes' ORDER BY bytes DESC LIMIT 20;<\/code>. \u00c9 assim que identifico as matrizes grandes, antigas <strong>Transientes<\/strong> e entradas de plugins que muitas vezes n\u00e3o precisam de ser carregadas automaticamente; uma breve <a href=\"https:\/\/webhosting.de\/pt\/wordpress-autoload-desempenho-wp-opcoes-otimizar-afinacao\/\">Instru\u00e7\u00f5es passo a passo<\/a> ajuda a avaliar os resultados de forma fi\u00e1vel.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/01\/wordpressautoloadmeeting4382.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Diagn\u00f3stico avan\u00e7ado: contagem, agrupamento, reconhecimento de padr\u00f5es<\/h2>\n\n<p>Para al\u00e9m do tamanho total, verifico tamb\u00e9m o n\u00famero e a origem das entradas:<\/p>\n<ul>\n  <li><strong>N\u00famero de op\u00e7\u00f5es carregadas automaticamente<\/strong>: <code>SELECT COUNT(*) FROM wp_options WHERE autoload='yes';<\/code><\/li>\n  <li><strong>Top namespaces<\/strong> (heuristicamente atrav\u00e9s de prefixos): <code>SELECT SUBSTRING_INDEX(nome_da_op\u00e7\u00e3o,'_',1) AS ns, COUNT(*) AS cnt, SUM(LENGTH(valor_da_op\u00e7\u00e3o)) AS bytes FROM wp_options WHERE autoload='yes' GROUP BY ns ORDER BY bytes DESC LIMIT 10;<\/code><\/li>\n  <li><strong>Transientes que s\u00e3o falsamente carregados automaticamente<\/strong>: <code>SELECT option_name FROM wp_options WHERE autoload='yes' AND option_name LIKE '_transient_%' ESCAPE '';<\/code><\/li>\n<\/ul>\n<p>Utilizo estas consultas para encontrar rapidamente caches de estat\u00edsticas, artefactos de construtores de p\u00e1ginas ou restos de registos, por exemplo. Muitas vezes, os padr\u00f5es s\u00e3o claramente reconhec\u00edveis: v\u00e1rios milhares de pequenas entradas de um plugin de an\u00e1lise ou algumas matrizes muito grandes de um construtor.<\/p>\n\n<h2>Valores-limite e medidas<\/h2>\n\n<p>Para uma avalia\u00e7\u00e3o r\u00e1pida, utilizo limiares fixos e utilizo-os para organizar a pr\u00f3xima <strong>Passos<\/strong> desligado. Isto permite-me tomar decis\u00f5es sem perder tempo com intui\u00e7\u00f5es. A tabela ajuda na categoriza\u00e7\u00e3o e oferece op\u00e7\u00f5es claras de a\u00e7\u00e3o em cada \u00e1rea. Mantenho-me fiel a ela porque funciona de forma fi\u00e1vel em muitos projectos. Especialmente quando os recursos s\u00e3o escassos <strong>Clareza<\/strong> em menos de um minuto.<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Tamanho do carregamento autom\u00e1tico<\/th>\n      <th>Risco<\/th>\n      <th>Medida recomendada<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>0-500 KB<\/td>\n      <td>baixo<\/td>\n      <td>Estado do documento, verificar ocasionalmente<\/td>\n    <\/tr>\n    <tr>\n      <td>500 KB-1 MB<\/td>\n      <td>m\u00e9dio<\/td>\n      <td>Verificar as entradas maiores, eliminar as desnecess\u00e1rias<\/td>\n    <\/tr>\n    <tr>\n      <td>&gt; 1 MB<\/td>\n      <td>elevado<\/td>\n      <td>Identificar originador de topo, sinalizador de carregamento autom\u00e1tico definido para \u201en\u00e3o\u201c<\/td>\n    <\/tr>\n    <tr>\n      <td>&gt; 2-3 MB<\/td>\n      <td>Cr\u00edtico<\/td>\n      <td>Limpeza sistem\u00e1tica, remover transientes<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<h2>Limpeza segura: passo a passo<\/h2>\n\n<p>Fa\u00e7o uma c\u00f3pia de seguran\u00e7a da base de dados antes de cada altera\u00e7\u00e3o, porque uma c\u00f3pia de seguran\u00e7a completa protege-me de <strong>Erros<\/strong>. Com o WP-CLI \u00e9 r\u00e1pido e f\u00e1cil: <code>exporta\u00e7\u00e3o wp db<\/code>. Elimino os transientes expirados: <code>wp transient delete --expired<\/code> e, se necess\u00e1rio, todos eles: <code>wp transient delete --all<\/code>. Removo especificamente as op\u00e7\u00f5es de plug-in \u00f3rf\u00e3s, por exemplo, com <code>wp option delete my_plugin_option<\/code>. Para entradas grandes que n\u00e3o precisam de ser carregadas automaticamente, implemento o sinalizador: <code>wp option update nome_da_op\u00e7\u00e3o 'valor' --autoload=no<\/code>; depois verifico o frontend e o <strong>Backend<\/strong> completamente.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/01\/wordpress-wpoptions-autoload-3784.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Rede de seguran\u00e7a, testes e retrocesso<\/h2>\n\n<p>Ap\u00f3s cada altera\u00e7\u00e3o, verifico estas \u00e1reas pela seguinte ordem: p\u00e1gina inicial (como convidado), uma subp\u00e1gina profunda, in\u00edcio de sess\u00e3o\/encerramento de sess\u00e3o, painel de controlo do administrador e grava\u00e7\u00e3o de uma publica\u00e7\u00e3o. Tamb\u00e9m acciono o Cron: <code>wp cron event run --due-now<\/code> e verifico o registo de erros. Se algo se avariar, reinicio especificamente: <code>wp option update nome_da_op\u00e7\u00e3o 'valor' --autoload=yes<\/code> ou definir a c\u00f3pia de seguran\u00e7a. Para matrizes grandes, exporto o seu conte\u00fado antecipadamente com <code>wp option get option_name &gt; backup.json<\/code>, Posso restaur\u00e1-lo em qualquer altura.<\/p>\n\n<h2>O que n\u00e3o defino como \u201eautoload=no\u201c<\/h2>\n\n<p>O WordPress utiliza algumas op\u00e7\u00f5es muito cedo no bootstrap ou em cada processamento de pedido. N\u00e3o altero cegamente o seu sinalizador de carregamento autom\u00e1tico, mesmo que sejam grandes:<\/p>\n<ul>\n  <li><strong>siteurl, home<\/strong>URLs b\u00e1sicos, necess\u00e1rios desde cedo.<\/li>\n  <li><strong>permalink_structure, rewrite_rules<\/strong>Essencial para a resolu\u00e7\u00e3o de pedidos; se n\u00e3o estiverem em <em>todas as op\u00e7\u00f5es<\/em>, Seguem-se outros \u00eaxitos da base de dados.<\/li>\n  <li><strong>modelo, folha de estilo<\/strong>Determina\u00e7\u00e3o do tema.<\/li>\n  <li><strong>blog_charset, timezone_string<\/strong> e outras predefini\u00e7\u00f5es essenciais.<\/li>\n<\/ul>\n<p>Regra b\u00e1sica: deixo as op\u00e7\u00f5es principais e as que s\u00e3o utilizadas em quase todos os pedidos serem carregadas automaticamente. Concentro-me em entradas de plugins grandes e raramente utilizadas, artefactos de cache, registos e transientes antigos.<\/p>\n\n<h2>Quando as op\u00e7\u00f5es devem permanecer grandes<\/h2>\n\n<p>Alguns dados podem ser grandes, mas n\u00e3o precisam de ser armazenados na mem\u00f3ria para cada pedido. <strong>terra<\/strong>. Para configura\u00e7\u00f5es extensas, utilizo as minhas pr\u00f3prias tabelas em vez de wp_options; isto mant\u00e9m a quantidade de autoload reduzida. A informa\u00e7\u00e3o relacionada com o utilizador pertence \u00e0 meta do utilizador, n\u00e3o \u00e0s op\u00e7\u00f5es globais. Guardo conte\u00fado est\u00e1tico, como longas cadeias de CSS\/JS, como um ficheiro e carrego-o especificamente. Ao guardar, defino o carregamento autom\u00e1tico diretamente para \u201en\u00e3o\u201c, por exemplo com <code>add_option('name', $data, '', 'no');<\/code>, para evitar <strong>Carregamento<\/strong> a evitar.<\/p>\n\n<h2>Guia do programador: Padr\u00f5es que escalam<\/h2>\n\n<p>Como programador, evito enormes \u201emega-op\u00e7\u00f5es\u201c que re\u00fanem tudo num array. Um conjunto restrito (autoload=sim) mais cargas pregui\u00e7osas direcionadas (autoload=n\u00e3o) \u00e9 melhor. Padr\u00f5es pr\u00e1ticos:<\/p>\n<ul>\n  <li><strong>Op\u00e7\u00f5es de divis\u00e3o<\/strong>: <code>meu n\u00facleo_de_plugin<\/code> (pequeno, carregamento autom\u00e1tico=sim) e <code>minha_cache_de_plugin_*<\/code> (grande, carregamento autom\u00e1tico=n\u00e3o).<\/li>\n  <li><strong>Armazenamento em cache direcionado<\/strong>: Subconjuntos frequentemente necess\u00e1rios com <code>wp_cache_set()<\/code> em vez de ter grandes op\u00e7\u00f5es carregadas automaticamente.<\/li>\n  <li><strong>Utilizar corretamente os transientes<\/strong>Por predefini\u00e7\u00e3o, n\u00e3o guardar o carregamento autom\u00e1tico e recuperar conscientemente; apenas os transientes muito pequenos e frequentemente utilizados s\u00e3o carregados automaticamente.<\/li>\n  <li><strong>Parar o crescimento das op\u00e7\u00f5es<\/strong>N\u00e3o armazenar logs ou caches ilimitados nas op\u00e7\u00f5es; aplicar tamanho m\u00e1ximo e TTL.<\/li>\n<\/ul>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/01\/wordpress-autoload-office-8391.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Preven\u00e7\u00e3o em vez de repara\u00e7\u00e3o<\/h2>\n\n<p>Mantenho os meus plug-ins reduzidos e desativo tudo o que n\u00e3o tem um benef\u00edcio claro, por isso o bloco de carregamento autom\u00e1tico mant\u00e9m-se <strong>pequeno<\/strong>. Uma vez por m\u00eas, verifico o tamanho com SQL ou WP-CLI e documento os valores. Em Ferramentas &gt; Estado do s\u00edtio Web, controlo as notas sobre as op\u00e7\u00f5es carregadas automaticamente. Para sites com muito tr\u00e1fego, vale a pena utilizar um alojamento que optimize o <strong>base de dados wordpress<\/strong> de forma eficiente e mant\u00e9m o wp_options limpo. Uma cole\u00e7\u00e3o de <a href=\"https:\/\/webhosting.de\/pt\/wordpress-opcoes-de-carregamento-automatico-desempenho-otimizacao-da-base-de-dados-aumento-de-desempenho\/\">Estrat\u00e9gias de afina\u00e7\u00e3o<\/a> ajuda-me a reconhecer os problemas numa fase inicial e a evitar que se tornem graves.<\/p>\n\n<h2>Automatiza\u00e7\u00e3o: pequenos empregos, grande impacto<\/h2>\n\n<p>Programo uma limpeza regular. Um cron job noturno (ou um cron do servidor que executa o WP-CLI) remove os transientes expirados e regista o tamanho do carregamento autom\u00e1tico num ficheiro ou tabela. Isto permite-me ver as tend\u00eancias antes de os utilizadores darem por elas. Exemplo de processo (simplificado):<\/p>\n<pre><code>wp transient delete --expired\nwp db query \"SELECT NOW(), SUM(LENGTH(option_value)) FROM wp_options WHERE autoload='yes';\" &gt;&gt; autoload_stats.log\n<\/code><\/pre>\n<p>Um pequeno controlo de sa\u00fade que guarde as 10 entradas principais com a data \u00e9 conveniente. Um olhar sobre o registo \u00e9 suficiente para atribuir os valores at\u00edpicos a um momento espec\u00edfico - normalmente ap\u00f3s uma atualiza\u00e7\u00e3o de um plugin ou uma nova fun\u00e7\u00e3o.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/01\/wordpress-wpoptions-0347.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Exemplo pr\u00e1tico: limpeza de 60 minutos<\/h2>\n\n<p>Num projeto, encontrei 5.500 op\u00e7\u00f5es carregadas automaticamente, totalizando cerca de 2 MB; a p\u00e1gina devolveu o primeiro byte ap\u00f3s cerca de <strong>1.900<\/strong> ms. Ap\u00f3s a c\u00f3pia de seguran\u00e7a, a elimina\u00e7\u00e3o transit\u00f3ria, a verifica\u00e7\u00e3o do top 20 e os ajustes de sinaliza\u00e7\u00e3o, o tempo de carregamento foi reduzido para metade, para cerca de 500 ms. A utiliza\u00e7\u00e3o da CPU baixou de 89 % para cerca de 2,5 %, e o backend respondeu significativamente mais depressa. O procedimento foi simples: medir, limpar, testar, documentar. Esta \u00e9 exatamente a rotina que utilizo regularmente para monitorizar o crescimento do <strong>wp_options<\/strong> permanentemente.<\/p>\n\n<h2>Causas e correc\u00e7\u00f5es t\u00edpicas<\/h2>\n\n<p>Os construtores de p\u00e1ginas gostam de escrever grandes matrizes de cache em op\u00e7\u00f5es que eu prefiro escrever em ficheiros. <strong>descartar<\/strong>. Guardo as estat\u00edsticas como transientes carregados de forma n\u00e3o autom\u00e1tica e recupero-as especificamente. Os registos devem estar em ficheiros rotativos, n\u00e3o em wp_options. Trabalhos cron falhados causam transientes antigos; aqui eu ajusto os intervalos e timeouts. Estas simples altera\u00e7\u00f5es reduzem rapidamente a quantidade de carregamentos autom\u00e1ticos e mant\u00eam-nos est\u00e1veis a longo prazo <strong>est\u00e1vel<\/strong>.<\/p>\n\n<h2>Influ\u00eancia das caches, do FPC e do alojamento<\/h2>\n\n<p>Uma cache de p\u00e1gina inteira (FPC) a montante protege principalmente os visitantes an\u00f3nimos. No entanto, sempre que a cache \u00e9 contornada - utilizadores com sess\u00e3o iniciada, cesto de compras, checkout, administra\u00e7\u00e3o, cron, WP-CLI - o bloco de carregamento autom\u00e1tico tem efeito total. Um servidor de base de dados r\u00e1pido esconde a carga de E\/S, mas o tempo de CPU para a desserializa\u00e7\u00e3o e o consumo de RAM mant\u00eam-se. Especialmente em inst\u00e2ncias pequenas com poucos trabalhadores FPM, um grande bloco de carregamento autom\u00e1tico leva a filas e timeouts, mesmo que os dados venham \u201edo cache\u201c. O objetivo \u00e9, portanto, manter sempre o bloco pequeno e n\u00e3o apenas tornar a fonte mais r\u00e1pida.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/01\/wordpress-autoload-6132.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Acompanhamento e n\u00fameros-chave<\/h2>\n\n<p>Acompanho o TTFB, o First Contentful Paint e o tempo de carregamento do backend antes e depois de cada <strong>Limpeza<\/strong>. Ao mesmo tempo, documentei o tamanho do carregamento autom\u00e1tico, o n\u00famero de op\u00e7\u00f5es carregadas automaticamente e as entradas maiores. Uma pequena folha com a data, o tamanho e o TTFB \u00e9 suficiente para identificar tend\u00eancias claras. Para a manuten\u00e7\u00e3o, utilizo consultas SQL mensais e uma breve <a href=\"https:\/\/webhosting.de\/pt\/otimizacao-da-base-de-dados-wordpress-wpoptions-dicas-manutencao-de-dados\/\">Atualizar a base de dados<\/a>-lista de controlo. Isto permite-me reconhecer precocemente os casos an\u00f3malos e manter a <strong>base de dados wordpress<\/strong> permanentemente magro.<\/p>\n\n<h2>Multisite: Dois estaleiros de constru\u00e7\u00e3o num piscar de olhos<\/h2>\n\n<p>Nas configura\u00e7\u00f5es de v\u00e1rios s\u00edtios, existe carga de carregamento autom\u00e1tico tanto por s\u00edtio como a n\u00edvel da rede. Por conseguinte, verifico o <code>wp_options<\/code> de cada s\u00edtio (prefixo de tabela por blogue) e, adicionalmente, as op\u00e7\u00f5es de rede. As matrizes grandes e utilizadas globalmente afectam todos os s\u00edtios. Proceder como na configura\u00e7\u00e3o \u00fanica: medir, identificar as entradas principais, externalizar os valores grandes ou mudar para <code>autoload=n\u00e3o<\/code> se n\u00e3o forem necess\u00e1rios para cada pedido. A redu\u00e7\u00e3o \u00e9 imediatamente percet\u00edvel, especialmente no administrador da rede.<\/p>\n\n<h2>Mal-entendidos frequentes - brevemente esclarecidos<\/h2>\n\n<ul>\n  <li><strong>\u201eO Redis resolve o problema\u201c.\u201c<\/strong> Reduz as consultas de BD, mas n\u00e3o o tamanho do bloco de carregamento autom\u00e1tico. Os custos de CPU e RAM permanecem.<\/li>\n  <li><strong>\u201eO FPC torna o carregamento autom\u00e1tico irrelevante.\u201c<\/strong> N\u00e3o para os utilizadores com sess\u00e3o iniciada, Cron e Admin. A vantagem do FPC n\u00e3o se aplica a estes utilizadores.<\/li>\n  <li><strong>\u201eApagar todos os transientes \u00e9 perigoso.\u201c<\/strong> \u00c9 seguro, mas apenas conduz a uma nova acumula\u00e7\u00e3o. Utilizar de forma orientada e planeada.<\/li>\n  <li><strong>\u201eUm bloco grande \u00e9 suficiente se houver poucas entradas.\u201c<\/strong> A soma dos bytes e da desserializa\u00e7\u00e3o \u00e9 decisiva, n\u00e3o o n\u00famero por si s\u00f3.<\/li>\n<\/ul>\n\n<h2>Plano de teste ap\u00f3s a limpeza<\/h2>\n\n<ul>\n  <li><strong>Extremidade dianteira<\/strong>P\u00e1gina inicial, arquivo aleat\u00f3rio e p\u00e1gina de detalhes, como convidado e utilizador com sess\u00e3o iniciada.<\/li>\n  <li><strong>Fun\u00e7\u00f5es<\/strong>Pesquisa, formul\u00e1rio de contacto, cesto de compras\/checkout (se for uma loja).<\/li>\n  <li><strong>Administrador<\/strong>Painel de controlo, lista de publica\u00e7\u00f5es, guardar uma publica\u00e7\u00e3o\/produto, p\u00e1gina do plugin.<\/li>\n  <li><strong>Contexto<\/strong>Executar eventos cron programados, verificar o registo de erros, medir aleatoriamente o TTFB.<\/li>\n<\/ul>\n\n<h2>Resumo para decis\u00f5es r\u00e1pidas<\/h2>\n\n<p>As op\u00e7\u00f5es de carregamento autom\u00e1tico s\u00e3o um assassino silencioso do desempenho, que posso eliminar com alguns passos claros. <strong>captura<\/strong>. Me\u00e7o o tamanho, removo os transientes antigos, defino as entradas desnecess\u00e1rias como autoload=no e externalizo os dados de grande dimens\u00e3o. Em seguida, testo o frontend e o backend e anoto os pontos de medi\u00e7\u00e3o. Com uma hora de trabalho concentrado, reduzo frequentemente a carga de carregamento autom\u00e1tico em 30-70 % e reduzo para metade os tempos de carregamento. Se repetir esta rotina todos os meses, pode manter o <strong>wp_options<\/strong> r\u00e1pido e o s\u00edtio \u00e9 visivelmente reativo.<\/p>","protected":false},"excerpt":{"rendered":"<p>Os dados de carregamento autom\u00e1tico do WordPress sobrecarregam wp_options e tornam o seu site mais lento. Saiba como limpar o **wordpress autoload** e aumentar o desempenho de wp_options.<\/p>","protected":false},"author":1,"featured_media":16735,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_crdt_document":"","inline_featured_image":false,"footnotes":""},"categories":[733],"tags":[],"class_list":["post-16742","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"litespeed-optimize-size":null,"litespeed-optimize-set":null,"_elementor_source_image_hash":null,"_wp_attachment_image_alt":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"surfer_file_name":null,"surfer_file_original_url":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":null,"rank_math_title":null,"inline_featured_image":null,"_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"_yoast_wpseo_linkdex":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_trp_translated_slug_en_us":null,"_wp_desired_post_slug":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_eael_widget_elements":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":null,"_edit_lock":null,"_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"1361","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"rank_math_internal_links_processed":null,"_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":null,"rank_math_contentai_score":null,"ilj_limitincominglinks":null,"ilj_maxincominglinks":null,"ilj_limitoutgoinglinks":null,"ilj_maxoutgoinglinks":null,"ilj_limitlinksperparagraph":null,"ilj_linksperparagraph":null,"ilj_blacklistdefinition":null,"ilj_linkdefinition":null,"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"WordPress Autoload","rank_math_og_content_image":null,"_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"16735","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts\/16742","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/comments?post=16742"}],"version-history":[{"count":0,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/posts\/16742\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/media\/16735"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/media?parent=16742"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/categories?post=16742"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/pt\/wp-json\/wp\/v2\/tags?post=16742"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}