WordPress e seu Ping da Morte

Ping, de maneira simplificada, é uma ferramenta que serve para que um determinado dispositivo avise e/ou verifique se um outro está disponível.

Este post foi atualizado pela última vez há mais de 3 meses.

raquete, bolinha e pesa de ping-pong

No final dos anos 90 era comum um tipo de ataque que derrubava servidores, máquinas de usuário (principalmente com Windows 95 ou Windows 98), congestionava redes, chamado Ping da Morte (link para a Wikipédia).

No universo do WordPress também temos pings, porém eles servem para indicar a outros sites que implementamos novidades no nosso blog. É útil para dar a conhecer a alguns sistemas de indexação, imediatamente após a publicação de um novo post, que conteúdo fresco foi disponibilizado.

O WordPress vem “de fábrica” com uma lista bem resumida de endereços padrão a serem pingados quando da publicação de um post. OK, a lista contém, por padrão, apenas um endereço para pingar: http://rpc.pingomatic.com. A maioria dos usuários nem se preocupa com esse recurso, mas alguns outros, na expectativa de ver explodir o tráfego em seus sites, acabam cometendo algumas imprudências.

Um caso real

Os VPSs da PortoFácil são máquinas bastante robustas, conectadas em redes de alta qualidade, e caso o site utilize a CloudFlare como acelerador, mesmo o mais simples dos VPSs pode aguentar um volume de tráfego considerável (acima de 1.000 usuários simultâneos, por exemplo).

Um cliente não estava conseguindo ter mais do que 200 usuários simultâneos porque seu VPS travava, e não havia nada que chegasse em termos de recursos para fazer a máquina dar conta de um tráfego assim de pequeno.

O cliente acabou contratando um profissional para reescrever o código do template, que ele usava, o que melhorou muito o resultado, mas não resolveu o problema.

Condição de disputa

O que acontecia no caso em questão era que o wp-cron entrava em condição de disputa, tanto pelos problemas inerentes à implementação do WordPress quanto pelo fato de realmente haver tarefas muito demoradas, ou ainda pior, que não terminavam nunca, levando ao esgotamento da memória do sistema.

Depois de muito sofrimento identificamos que havia conexões que se abriam mas nunca fechavam para o endereço http://rpc.icerocket.com:10080/. E foi como conseguimos identificar o mecanismo do ping assassino de WordPress!

Como evitar o ping da morte

É muito simples evitar o ping da morte do WordPress: basta ter bom senso.

Pense que serviços de pings obscuros não valem o risco de fazer seu WordPress inteiro virar uma anã branca de tão pesado. Considere enviar pings automáticos apenas para os serviços que lhe são relevantes, que em nossa opinião são os seguintes:

  • http://rpc.pingomatic.com/
  • http://blogsearch.google.com/ping/RPC2
  • http://api.my.yahoo.com/RPC2
  • http://api.my.yahoo.com/rss/ping
  • http://ping.feedburner.com
  • http://xping.pubsub.com/ping

A razão para a utilização dos serviços do Google, do Yahoo! e do FeedBurner é bastante óbvia. Já a utilização do xping.pubsub.com/ping é mais sutil: este serviço replica o seu ping para dezenas de outros serviços, automaticamente.

A rigor, na verdade, bastaria manter este serviço ativo na lista de pings e pronto.

Conclusão

O WordPress é uma plataforma fantástica, mas como toda ferramenta precisa ser bem utilizada. Se for mal configurado, seja por desconhecimento, má fé ou olho grande (visitas orgânicas se aumentam escrevendo conteúdo bom, e não pingando serviços de indexação), ele demandará um servidor da NASA para rodar, fazendo com que o faturamento seja sempre insuficiente para cobrir as despesas.

Quero ser cliente da PortoFácil! Entre em contato

Leia também

Textos que têm a ver com este assunto:
TUTORIAL: como resolver erros e problemas no WordPress

Tutorial de como resolver os principais erros e problemas relacionados ao WordPress. Confira nosso passo a passo detalhado de soluções!

Novidades do WordPress 6.7.1

Conheça todas as novidades do WordPress, incluindo melhorias e aprimoramentos em segurança, desempenho e acessibilidade.

Como migrar site de qualquer plataforma para WordPress

Tutorial completo de como migrar site de qualquer plataforma (Drupal, Wix, Tumblr, Blogger, Blogspot, Joomla e Magento) para o WordPress.