Cloud computing para grandes sites em WordPress

Cloud para grandes sites em WordPress

Cloud para grandes sites em WordPress

Estamos em uma era que não podemos negar o poder do WordPress em administrar sites. Muito além dos antigos blogs que víamos sempre por aí, grandes sites, portais e até mesmos lojas
virtuais já podem, e estão utilizando desta plataforma para se estabelecerem online. É o caso de sites como o do ministério da cultura, USP (Universidade de São Paulo) e o próprio iMasters.

Estes tipos de sites tem em comum alguns pontos que não permitem mais funcionar normalmente dentro de uma estrutura compartilhada. A utilização de plugins para controle
e segurança do WordPress e o nível de personalização do próprio WordPress para atender as demandas destes tipos de projetos podem ser um fator a se analisar. Mas sem dúvida o
fluxo de processos, acessos e atualizações de banco de dados que superam, e muito, qualquer estrutura fornecida por planos comuns de hospedagem são o maior fator a se considerar aqui.

Estrutura Dedicada do cloud

Ao contrário das hospedagens compartilhadas uma estrutura em cloud computing permite a disponibilização de recursos dedicados ao projeto. Isto quer dizer, mais segurança, estabilidade e desempenho para o projeto que não será influenciado por outros sites que estão no mesmo servidor.

Nesta estrutura é possível pensar de forma escalada os recursos que vão atender a esta alta demanda do projeto. Sejam recursos para o fluxo normal de utilização do site ou para um momento de pico o cloud computing permite aos administradores de desenvolvedores se precaverem contra ultrapassar o uso de recursos como, memória, espaço em disco e VCPUs conforme o crescimento do uso destes sites.

O patamar de informações que circulam neste tipo de projeto precisa estar muito bem alinhado com os recursos aplicados ao servidor que o sustenta. Um erro aqui pode ser o fim da estabilidade do site.

Separação de banco de dados

O WordPress, como um bom CMS, realiza o controle de informações dentro de banco de dados. Assim, pode não parecer tão claro mas, se preocupar com o acesso, estabilidade e cacheamento desta base de dados é o fator que deve estar no top 1 das preocupações do seu projeto.

A Notícia boa é que com uma estrutura em cloud é possível criar um cluster de banco de dados. Este cluster é responsável por separar em diferentes instâncias sua aplicação web (que vai possuir acesso dos seus usuário) e a escrita/leitura dos dados no banco de dados que serão feitas pela aplicação. Em um post feito no Blog da DialHost expliquei sobre o funcionamento do cluster de banco de dados e como esta arquitetura balanceia a quantidade de requisições ao banco.

Balanceando as cargas de acesso

Do lado da aplicação é possível balancear os processos. Com o balanço, sua rede direcionará os acessos ao WordPress para instâncias separadas de forma uniforme. Por fim você otimizará a utilização dos recursos e evitará sobrecargas que poderiam ocorrer em uma instância única.

Cacheamento dos dados em nível de servidor com Redis

O Redis é um servidor de estruturas de dados que pode ser usado como um servidor de banco de dados. Ele também pode ser utilizado em paralelo com o MySQL para aumentar o seu desempenho. Ele é recomendado para ser configurado como cache. Desta forma ele é capaz de aliviar o consumo que as queries de banco de dados usam para renderizar a página em WordPress.

Como resultado teremos um WordPress renderizado muito mais rápido, o consumo bem menor dos bancos de dados e cache persistente e ajustável.

Como podem ver, este artigo não foca mais naquelas simples soluções baseadas em otimizações feitas por plugins do WordPress que funcionam em diversos blogs menores. Aqui estamos falando  em soluções para
grandes sites que tem acessos e processos bem mais robustos. Nestes casos ter o controle total das requisições, rede, banco de dados são de fato os maiores responsáveis pela estabilidade do site.

Para o próximo artigo, vou escrever sobre a configuração do Redis para manter o cacheamento das informações do WordPress. Então até lá.

Felipe Moraes
Felipe Moraes

Gerente de desenvolvimento na DialHost, Designer Gráfico formado pela Universidade FUMEC, Minas Gerais e Pós graduando em Branding pelo Centro Universitário UNA, possuo interesse em design de interação e interfaces. Trabalha com programação e criação para web, desde 2006. Apreciador de Bacon, Pudim e music Tag.

Proteja seu WordPress com essas incríveis dicas de segurança

Password hashing

Imagem ilustrativa

Garantir proteção ao seu WordPress é regra básica em qualquer situação e em qualquer tipo de projeto. Imagina um dia de trabalho super produtivo e do “nada” tudo desaparece, seu site cai ou fica a maior bagunça no seu servidor. Esse tipo de problema é de deixar qualquer desenvolvedor de cabelos em pé e desesperado – isso no caso de você não ter um backup de tudo. A segurança no WordPress deve estar presente durante todo o levantamento de requisitos de qualquer site. Utilizando técnicas, métodos e até plugins, você consegue garantir que seu WordPress esteja blindado contra os tipos mais comuns e diferentes de ataques e problemas de segurança. Por isso, vamos listar agora dicas incríveis para a segurança no WordPress.

Admin_ID difente de 1
Sempre que se realiza uma nova instalação WordPress, o primeiro usuário criado (comumente o admin) recebe o ID igual a 1 – o ID é referente ao usuário no banco de dados. Perceba que, nós – usuários com um conhecimento maior sobre a plataforma -, já sabemos que o ID é sempre 1. Logo, alguém mal intencionado pode direcionar um ataque a este usuário.

Alterar o ID do usuário não é algo tão complicado, mas você precisa ter um nível considerável em banco de dados. Do contrário, uma simples alteração através de queries de update pode invalidar seu usuário e até derrubar seu site. O ID que precisa ser alterado, referente ao usuário admin, deve ser atualizado em pelo menos duas tabelas por padrão: wp_user e wp_usermeta.

Senhas mais difíceis
Se você não quer perder seu usuário e também o seu site, o mínimo é manter senhas seguras e fortes para os seus usuários. O WordPress tem um analisador de senha, onde você pode saber qual a força da senha digitada. Para ter senhas fortes você deve sempre recorrer a um gerador de senhas. Então esqueça senhas como: 123456 ou a1b2c3d4e5.

Backup do seu banco de dados
Manter um cronograma para realizar backups do seu site é importante. Se algo deu errado, quebrou ou desconfigurou – a restauração do banco de dados por meio de um backup garante todo o seu trabalho e conteúdo do seu site. Faça backups manuais ou utilize plugins que façam esse trabalho. Existe plugin até para fazer backup junto com o Dropbox.

Gerencie o login e tudo relacionado aos usuários
Você pode se livrar de ataques a página de login apenas escondendo a mesma. Dessa forma, o login não poderá ser feito por meio da página padrão, wp-login. Também é válido retirar a opção de recuperação de senha. Um furo inocente, mas que nas mãos de quem tem conhecimento muito pode fazer, é liberar acesso ao painel por parte dos usuários do tipo assinantes.

Secret keys
O WordPress trabalha com secret keys para a criptografia de seus cookies. As secret keys, que ficam localizadas no arquivo wp-config.php, devem ser setadas de forma correta. Cada chave é um conjunto com letras, números e caracteres especiais, o que as torna difíceis de serem descobertas. Acesse o Secret Key Generation Tool do WordPress para atualizar as suas.

Limitar tentativas de login
No WordPress existe plugin para fazer tudo. Então, utilizar plugins para limitar tentativas de login e o tempo de espera é mais do que útil. Defina um número limite para cada tentativa de login, bem como um intervalo de tempo para bloquear as tentativas de login. É possível, também, armazenar o IP da máquina do usuário que tenta realizar login e então, bloqueá-lo.

Permissão de acesso por IP
Se o sistema deve permitir o login derivado apenas de dentro da empresa (IP fixo), você deve definir permissões por meio de IP. Aqui estou dando um exemplo de como você pode gerenciar o acesso – tanto ao login, quanto ao site, derivados de um único local. Trabalhar com gerenciamento de IPs é interessante para garantir a segurança e acesso ao seu sistema.

Permissão de arquivos
Desenvolvendo com WordPress, ou não, cuidar das permissões para pastas e arquivos é requisito essencial à segurança de seu servidor. Por padrão, as pastas devem responder ao padrão 755 e os arquivos 644. No WordPress você deve estudar e realizar permissões diferenciadas para pastas e arquivos. Tornando-os inacessíveis a partir de suas permissões.

Ocultar ou personalizar mensagens de erro no login
Cuidado básico, mas que muitos não percebem sua importância: oculte ou personalize as mensagens de erro do sistema de login. Oculte as mensagens de erro que informam que o e-mail não existe, ou que o nome de usuário é inválido e que a senha digitada está incorreta. Com tais informações qualquer um já tem muitas pistas que ajudam o seu acesso.

Configurações no .HTACCESS
Utilizando instruções específicas você consegue proteger pastas, arquivos e até o próprio arquivo .htaccess. Proteja qualquer tipo de acesso externo ao wp-config.php e também a listagem de diretórios dentro da URL. Permita que apenas imagens e arquivos sem extensão .php sejam acessados dentro da pasta wp-content. Tudo isso você consegue apenas por meio do .htaccess.

Segurança nunca é demais para o seu WordPress. Com as dicas que passamos aqui você pode:

  • Gerenciar acesso por IP;
  • Criptografia de cookies confiável;
  • Fugir do óbvio alterando o ID para o admin – este que requer conhecimento elevado em WordPress e banco de dados.

—–

Artigo publicado no iMasters.

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.

Três ferramentas de cache para acelerar seu WordPress

wordpress wallstreet

Imagem: Marca WordPress

Acelerar seu site em WordPress certamente traz grandes benefícios. Além de ser uma experiência favorável para o usuário, pode ser um fator determinante para o posicionamento na página de buscas do Google. Por isso, aqui vão algumas dicas de como utilizar plugins de cache para aumentar a velocidade de entrega de conteúdo na sua página!

O que é cache e como ele pode trazer benefícios

Cache é uma cópia de um conteúdo que costuma ser gerado dinamicamente, servindo a requisições subsequentes de maneira mais rápida, evitando o reprocessamento desnecessário de conteúdo.

O objetivo do cache é reduzir o custo de acesso de sites. Existem técnicas que aumentam a performance de um site exercendo regras sobre os navegadores para tipos de arquivos diferentes, como de imagens, que raramente são alterados, podendo ter tempo de cache alto. Esse tipo de cache é armazenado no browser.

Já conteúdo dinâmico tem seu cache armazenado diretamente no servidor web, pois é necessário um controle de alterações mais eficaz.

O cache pode beneficiar o site reduzindo a demanda de recursos em cada acesso único e, em casos de cache client side, também pode reduzir o conteúdo entregue.

O tempo e a quantidade ideal de cache dependem de cada projeto, pois cada conteúdo pode ter um tipo diferente de cache conforme as regras de negócio do site.

Por que plug-ins de cache?

Um plug-in de cache é um fator muito importante em um blog de sucesso. Se você utiliza o WordPress, a cada visita esse CMS irá passar por um processo de montagem da página ligado pela conexão com o banco de dados e montagem do código HTML.

Quando um site recebe um tráfego pesado, uma carga significativa no servidor pode retardar o carregamento das páginas e até mesmo torná-lo indisponível. Se o cache estiver habilitado, apenas o primeiro visitante irá passar por esse processo. Depois, todos os demais internautas irão visitar páginas HTML que já estão prontas, e o processo será muito mais rápido.

Existem diversos plug-ins de cache que aceleram a sua página em WordPress. Neste artigo, vamos falar sobre três ferramentas que quando utilizadas em conjunto podem aumentar ainda mais a velocidade de sites em WP.

OPcode

O OPCode é uma extensão do PHP que foi gerada para aumentar a performance de execução de código ao ser processado no servidor. Após a abertura do plano, que era proprietário, a Zend introduziu-o ao PHP e tem mostrado suporte para o projeto.

Toda vez que um script é executado, a engine do PHP precisa compilar o código fonte em algo que a linguagem de máquina possa entender, resultando em um OPcode. Quando uma nova requisição é realizada, antes de o PHP compilar o código fonte, o software de cache intercepta e verifica se o OPcode do script já existe no cache. Caso não exista, o sistema de cache passa para o PHP Engine gerar o OPcode e o armazena no cache.

Nas requisições subsequentes para o mesmo script, o OPcode será obtido a partir do cache, e não será necessário ser compilado pelo Engine do PHP novamente. Esse processo economiza de forma considerável o processamento de CPU no servidor.

É claro que, se houver mudanças no código fonte em um script que já tenha o OPcode no cache, a mudança será identificada pelo sistema, que irá proceder com a devida atualização.

W3 Total Cache

Este plug-in melhora a experiência do usuário no seu site, aumentando o desempenho do servidor e reduzindo os tempos de download. Com ele, você tem uma infinidade de opções de otimização, como minimização de código fonte e integração com sua rede de distribuição de conteúdo (CDN).

Com o W3 Total Cache instalado, seu blog pode carregar 10 vezes mais rápido e economizar até 80% de largura de banda. O tempo de inatividade é reduzido e a qualidade é drasticamente melhorada.

Importante: Antes de instalar o W3 Total Cache, é necessário que você remova ou desinstale todos os plug-ins de cache que esteja usando (por exemplo, o WP Super Cache). Se você tiver algum plugin de cache correndo, é natural que tenha problemas na ativação.

Varnish

Varnish é um servidor HTTP usado como proxy de cache para conteúdo web. Ele atua de forma transparente, independentemente de linguagens de programação e bancos de dados, pois age diretamente na camada HTTP, utilizando somente cache de conteúdo já gerado.

Basicamente, quando um cliente acessa um site que possui um Varnish, ele acessa o Varnish, que confere se já possui cache do conteúdo acessado. Se tiver, entrega o conteúdo imediatamente. Caso contrário, busca o conteúdo no servidor original (que fará o processamento), armazena-o em cache e entrega o retorno ao usuário inicial.

Após esse armazenamento, o fluxo é repetido em novos acessos, com a vantagem de que o cache fica armazenado na memória RAM do servidor, aumentando a velocidade de entrega de conteúdo.

O Varnish pode aumentar a velocidade de 300 a 1.000 vezes, principalmente de elementos estáticos, e diminuir bastante a utilização de memória, deixando para o Apache somente a execução de conteúdo dinâmico, como scripts PHP e CGI.

A implantação do Varnish não requer mudanças na programação do site. Caso ele rode no mesmo servidor que o Apache, existe a necessidade de ajuste das portas de comunicação e uso de um IP adicional. Também pode ser utilizado para balancear a carga entre dois ou mais servidores web.

As técnicas de cache são usadas para melhorar o desempenho do site, ao preservar recursos do servidor, permitindo que ele possa entregar o conteúdo a mais usuários. Planejar e oferecer acesso rápido aos usuários do seu site é um dos passos essenciais para o sucesso da sua página!

—–

Artigo de Andressa Dorneles, publicado originalmente no iMasters.

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.

WordPress 3.6 Release OverView

WordPress 3.6 release overview . 20 de setembro de 2013 . São Paulo

Chamada para o WordPress 3.6 release overview

No dia 20 deste mês (setembro), teremos o primeiro evento dedicado às atualizações do WordPress, realizado no Brasil. O evento organizado pela Apiki, e que conta com o patrocínio da DialHost, irá discutir junto a um grupo seleto de convidados sobre as novidades do WordPress 3.6 e o futuro da ferramenta no mercado.

Atualmente, o WordPress é a plataforma de desenvolvimento de site dinâmicos e publicação de conteúdo mais utilizada no mundo e entre duas e três vezes ao ano é lançada uma nova atualização que trazem mudanças e correções significativas no seu sistema. Para apresentar estas novas versões que estão chegando, nós apoiamos a ideia da Apiki na organização do primeiro de muitos WordPress Release Overview. Neste evento serão retratados assuntos como as novidades que ainda virão em 2013 e palestras como:

  1. Menu. Nova experiência de uso.
    Com Mayara Alanna
  2. Novo design. Ousadia e alegria.
    Com Gabriel Fernandes e José Guilherme
  3. HTML 5. As novas marcações semântica.
    Com Yago Silva e Luan Ramos
  4. Auto save, Post lock e In-line Login. O que essa tríade representa?
    Com Mayara Alanna
  5. Miscelânea de novas funções.
    Com Daniel Antunes

O Evento ocorrerá em São Paulo. Para os interessados em mais detalhes sobre o WordPress 3.6 Release OverView ou em participar dos outros eventos que virão é possível se cadastrar através do site http://apiki.com/wordpress-3.6-release-overview.html. Mas lembramos que as vagas são limitadas e os participantes serão selecionados pelos organizadores.

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.

Nginx e Varnish na Hospedagem WordPress

nginx e varnish

Imagem: Marcas Varnish e Nginx.

Clientes da hospedagem WordPress da DialHost, agora já contam com Nginx e Varnish em suas hospedagens. No último mês trabalhamos duro para anunciar essa mudança. Horas e horas de testes, conteúdos e de domínios para chegar a melhor configuração, que agora pode ser anunciada.

Essa mudança veio para melhorar o desempenho das instalações WordPress, deixando-os mais rápidos e obtendo melhores resultados para seus usuários. Isso tudo se deve às características dessas duas Ferramentas que trabalham efetivamente em conjunto com o WordPress

Nginx

O Nginx é um servidor HTTP, rápido, leve, e com inúmeras possibilidades de configuração para melhorar performance. Ele trabalha juntamente com o Apache e permite a realização das mesmas tarefas consumindo menos memoria que o Apache sozinho. Isso é possível porque o Nginx acelera o processo no trabalho em conjunto das duas ferramentas.

Varnish

O Varnish é um acelerador HTTP, projetado para sites web dinâmicos com alto volume de conteúdo. Ele é capaz de acelerar o seu site em até 300x, fazendo análises de conteúdos acessados. Através dessas analises ele consegue gerenciar suas páginas e armazenar cache de forma otimizada.

Em testes de laboratório, foi verificado que usando essas duas ferramentas, o tempo de carregamento dos sites diminuíram cerca de 60%. Para saber mais sobre o assunto você pode acessar os links:

Outras referências:

Aproveite e confira nosso plano de Hospedagem WordPress.

DialHost
DialHost

Contamos com nosso DataCenter no Brasil de alta qualidade, estabilidade e confiança para hospedar seu site. Utilize poderosas ferramentas para otimizar o uso do seu serviço e seja sempre atendido de forma rápida e clara pelo nosso atendimento 24h.