PHP Cloud Hosting com Jelastic PaaS: código, entrega e otimização | iMasters
O PHP é considerado um dos mais fáceis de usar linguagens de script do lado do servidor. Seu uso para sites (top 10 milhões pelo ranking Alexa) está em constante crescimento, e atualmente atinge 83,5%. A popularidade do mecanismo PHP também é comprovada pelos clientes da Jelastic, obtendo 47,6% entre outras linguagens de programação devido às estatísticas de pilhas de software do ano anterior.
Vamos fazer uma jornada para a hospedagem de nuvem PHP no Jelastic PaaS, suas peculiaridades principais, pontos a serem ganhos e as ricas possibilidades oferecidas para o funcionamento eficiente dos aplicativos.
Mantendo o ritmo com a evolução da tecnologia, a Jelastic suporta as versões mais recentes do mecanismo PHP:
Você pode escolher a versão do mecanismo que precisa durante a criação do ambiente e alternar facilmente entre eles depois por meio da Jelastic UI intuitiva.
Servidores de aplicação PHP
Dois servidores de aplicação PHP são fornecidos por padrão e suportados pela Jelastic (por exemplo, atualizações de versão ou patches de segurança são adicionados pela equipe da Jelastic aos templates):
Para ver em detalhes como esses servidores podem ser configurados e descobrir a lista de arquivos de configuração editáveis para cada um deles, consulte o documento PHP App Server Configuration.
Implementação da aplicação PHP
A implementação com tempo de inatividade zero fornece a capacidade de executar qualquer aplicação nativa ou legada na nuvem. Para entregar seus projetos PHP no ambiente criado na Jelastic, você pode escolher uma das opções disponíveis:
Além disso, você pode configurar uma re-implementação periódica automática a partir do repositório (ela é executada somente se novas alterações de código aparecerem).
Para fins de produção, você pode ligar um nome de domínio externo (customizado) à sua aplicação em vez do domínio do ambiente padrão. Isso pode ser feito de duas maneiras: usando CNAME ou A Record.
Com a ajuda do recurso de troca de domínios, os usuários finais da sua aplicação não terão qualquer tempo de inatividade quando você, por exemplo, implementar uma nova versão da aplicação. Você pode organizar sua nova versão da aplicação em um ambiente de teste e, consequentemente, trocar URLs por um ambiente de produção com apenas alguns cliques.
O uso de vários domínios em um único servidor PHP aumenta a usabilidade, a eficiência e a escalabilidade da aplicação, economizando simultaneamente os custos com a necessidade de configurar instâncias separadas.
O escalonamento vertical automático é possibilitado pela capacidade da Jelastic de alterar dinamicamente o número de recursos alocados (RAM e CPU) para um servidor de acordo com suas demandas atuais, sem necessidade de intervenção manual. Esse recurso garante que você nunca pague em excesso por recursos não utilizados e economize seu tempo, pois elimina a necessidade de manipular os ajustes relacionados à carga ou às mudanças na arquitetura.
Para configurar o consumo automático de recursos pelo seu servidor PHP, abra o assistente de topologia do ambiente e especifique o limite de escalonamento superior dos cloudlets (cada um igual a 128 MiB e 400 MHz) com o controle slider localizado na parte superior:
Sua aplicação funcionará dentro desses limites, reduzindo o consumo de recursos quando a carga estiver baixa ou aumentando-os quando a carga estiver ativa. Assim, você paga apenas pelos recursos que são realmente consumidos. Para mais informações, consulte a documentação sobre escalonamento vertical automático.
Escalonamento horizontal manual
Para adicionar servidores PHP extras manualmente, basta clicar em "Change environment topology". Em seguida, pressione o botão "+" no assistente e adicione o número necessário de instâncias.
O número máximo de servidores do mesmo tipo em uma única camada de ambiente depende de determinadas configurações do provedor de hospedagem (geralmente, esse limite representa 16 nós e pode ser ajustado enviando uma solicitação para o suporte).
Além disso, como você pode ver, quando você adiciona servidores extras, o balanceamento de carga é ativado automaticamente.
Por favor, encontre mais detalhes sobre o escalonamento horizontal manual na documentação.
O escalonamento horizontal automático pode ser implementado por meio de acionadores ajustáveis, que monitoram as alterações na carga da aplicação e aumentam ou diminuem o número de nós devido a eles.
Para configurar um acionador para o escalonamento horizontal automático, abra Settings > Monitoring > Auto Horizontal Scaling e pressione o botão "Add".
Dessa forma, você pode configurar os acionadores para pilhas e recursos específicos (CPU, RAM, Rede, Disco) em seu ambiente separadamente. Basta especificar as condições de escalonamento e aplicar as alterações.
Por favor, encontre mais detalhes sobre o escalonamento horizontal automático no documento correspondente.
Clustering PHP
A implementação do clustering de sessões PHP para sua aplicação pode aumentar muito seus recursos de disponibilidade e failover usando as sessões persistentes, executadas em vários nós do servidor de aplicativos.
Esse mecanismo é assegurado por um nó Memcached, que deve ser adicionado ao seu ambiente e usado como armazenamento para os backups das sessões processadas.
Ao escalar o servidor PHP com a aplicação implementada, você obtém sua cópia exata com todas as mesmas configurações e arquivos internos devido à sincronização de dados integrada.
Além disso, a Jelastic tem o WordPress Cluster e o Magento Cluster pré-empacotados e autoescaláveis disponíveis para instalação em um clique para garantir a operabilidade do serviço. Você também pode empacotar qualquer aplicativo PHP dessa maneira para automatizar sua instalação em cluster.
Conexão de banco de dados à aplicação PHP
O Jelastic PaaS fornece um conjunto de servidores de banco de dados escaláveis e totalmente gerenciáveis que você pode instalar e operar facilmente no ambiente PHP. Para estabelecer a conexão, ajuste sua aplicação seguindo as instruções baseadas no banco de dados de que você precisa:
Conexão PostgreSQL
Módulos e aceleradores
Ao trabalhar com o Jelastic PaaS, você pode estender a funcionalidade do ambiente definindo extensões PHP diferentes nos servidores de aplicação apropriados. Você pode selecionar uma das extensões padrão e ativá-la, ou fazer upload de sua própria customização – ambas as operações são descritas na instrução PHP Modules.
Como um tipo separado de extensão PHP, os aceleradores PHP podem ser determinados. Eles são usados para aumentar a eficiência de sua aplicação por meio do armazenamento em cache das partes já compiladas do código PHP, que podem ser executadas rapidamente mediante a solicitação do usuário.
Os servidores Apache PHP e NGINX incluem um conjunto particular de módulos embutidos. Além disso, existem alguns tutoriais separados sobre como configurar os vários módulos:
Módulos Adding Custom Apache
Módulo Apache WebDav
Módulo Apache Statistics
Módulo NGINX WebDav
SSL/TLS (Secure Sockets Layer/Transport Layer Security) é a tecnologia de segurança padrão da indústria para estabelecer uma conexão criptografada entre um servidor web e um navegador. Essa tecnologia é suportada pelo Jelastic PaaS e garante que todos os dados transmitidos permaneçam particulares e confidenciais, ou seja, não podem ser interceptados por terceiros.
Além dos métodos comuns de proteção, a segurança da sua aplicação pode ser aumentada através da personalização do arquivo principal de configuração do PHP, chamado php.ini. Você pode editar várias configurações padrão que ele contém ou adicionar as suas próprias de acordo com as necessidades da sua aplicação.
Orientação de configuração adicional está disponível para servidores de aplicação específicos:
Configurações Apache Security
Configurações NGINX Security
Mais uma maneira de garantir que a proteção da aplicação esteja usando um recurso de firewall de container. Ele permite controlar a disponibilidade de seus nós tanto de dentro, quanto fora da plataforma.
"O PHP sempre foi sobre tornar o desenvolvimento web fácil e acessível para todos. A abordagem da Jelastic ao PaaS se encaixa muito bem com essa missão, e estou ansioso para ajudá-los a criar mais produtos excelentes", – Rasmus Lerdorf, criador do PHP.
Rasmus juntou-se à Jelastic em 2013 como consultor sênior e auxiliou na integração de tecnologias PHP à plataforma. Atualmente, essa linguagem se tornou a principal escolha dos usuários, juntamente com Java, Ruby, Python, Node.js, .Net e Go.
Procurando por hospedagem em nuvem PHP altamente disponível, segura, autoescalável e fácil de gerenciar? Explore possibilidades ilimitadas de PHP com o Jelastic PaaS.
Faça um teste registrando-se em um dos provedores de serviços disponíveis.
Tetiana Fydorenchyk faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela Redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: https://jelastic.com/blog/php-cloud-hosting-guide/