Alguém pode explicar o verdadeiro cenário da implantação do Rails vs PHP, particularmente no contexto da hospedagem na Web baseada em revendedor (por exemplo, Hostgator)?

15

Atualmente, tenho uma conta de revendedor na empresa HostGator. Eu desenvolvo sites, que até agora foram envolvidos ocasionalmente em Wordpress CMSs e similares (aplicativos PHP). Em seguida, vendo a hospedagem (do site que eu projetei) para o cliente, o que é bastante simples, basta clicar em um botão e adicionar uma nova conta / site de hospedagem compartilhada com as configurações que desejar. Além disso, utilizo o WHMCS para automatizar o gerenciamento de contas e cobrança.

É um pacote legal e bem simples. Pago algo como US $ 25 por mês e posso vender cem contas com isso (porque os requisitos de largura de banda dos meus clientes são baixos).

Agora estou descobrindo a necessidade de desenvolver aplicativos mais personalizados, incluindo um CMS minimalista e várias coisas proprietárias. Em breve, anteciparei o desenvolvimento desses aplicativos para clientes também. Assim, passei os últimos meses aprendendo Rails, e está indo bem agora.

O que mais me incomodou o tempo todo, porém, é o problema de implantação. Não consigo envolver meu cérebro em torno disso. Parece que todas as opções populares (Heroku, etc) têm boa automação com o git e são configuradas no "Rails Way". Eu entendo isso (mais ou menos). Mas é terrivelmente caro ... um único dinamômetro, um auxiliar e o banco de dados mais barato (que eles dizem ser adequado principalmente para testes) que não se limita a 5 MB custa US $ 51. Isto é para um app !!! Coloque um banco de dados de "produção" e você terá mais de US $ 200. É como ... os mesmos preços que a obtenção de um servidor em algum lugar, certo?

Enquanto isso, voltando ao que eu acho que é um ambiente de hospedagem "tradicional" com o Hostgator, o servidor deles só possui Ruby 1.8.7 e Rails 2.3.5 ... Sem Rails 3. AND, sem Passenger (não que eu realmente entenda a diferença em CGI ou mod_rails ou o que quer, mas eles dizem que Passenger é o mais simples). Portanto, entendo que, se eu criar um aplicativo no Rails 3, ele não será executado neste host? Mas, caramba, eu já tenho essas contas na minha conta de revendedor, todas executando html estático e / ou coisas PHP, certo? E agora? Como faço para obter tudo isso sob o mesmo teto (e acessível)?

Perdoe minha ignorância, mas simplesmente não entendo. Gerenciar um VPS é legal e tudo, mas envolve aprender coisas e segurança do administrador do servidor ... E é caro. Entendo que um compartilhado e / ou revendedor "baseado em servidor" (perdoe a terminologia) pode ser inadequado para aplicativos em larga escala que usam muita largura de banda ... Mas e para aqueles que estão construindo reais (mas pequenos) e baixa largura de banda) aplicativos (com Rails) e quem deseja implantá-los de forma simples e barata, usando a mesma abordagem conceitual do PHP? Mesmo depois de aprender todo esse material sobre Ruby e Rails por meses, estou questionando se vale a pena quando se trata de implantação. Quero criar um aplicativo pequeno, enviá-lo para o meu diretório pessoal em uma conta de servidor compartilhada e apenas executá-lo. Por que isso deveria ser tão difícil? Estou apenas escolhendo o idioma / estrutura errado?

Perdoe minha ignorância no assunto; essas perguntas não são retóricas; apenas tentando aprender aqui.

Então:

1) Eu apreciaria se alguém pudesse me dar um bom resumo de como entender a implantação no Rails vs. PHP.

2) Eu apreciaria se alguém pudesse resolver o meu problema ao administrar uma empresa de hospedagem / web em torno da hospedagem de revendedores (Hostgator), além de poder hospedar aplicativos Rails. Isso pode ser feito? E como uma empresa como a Hostgator pode ignorar completamente o que há de atual no Rails / Ruby?

Obrigado.

rcd
fonte
2
+1 por não dizer "ei, vou alugar um VPS! Não vou ser hackeado porque tenho atualizações automáticas, certo?"
Pekka suporta GoFundMonica
4
@closevoters se você precisar fechar o votação, vote pelo menos para migrá-lo para a falha do servidor ou webmasters. É uma pergunta perfeitamente bem, e nada argumentativa
Pekka suporta GoFundMonica 4/11/23

Respostas:

9

Embora a hospedagem do Rails provavelmente nunca seja tão barata quanto o PHP, já que os requisitos de infraestrutura são sempre mais altos, não é caro hospedar um site do Rails.

É necessária uma certa habilidade técnica para implantar adequadamente um servidor baseado em Linux e carregar no Rails e todo o material de back-end do banco de dados associado, mas esse não é um obstáculo intransponível. Qualquer programador competente provavelmente poderia se atualizar dentro de algumas semanas com apenas algumas horas por dia e um bom livro de referência. Esse é o tipo de coisa que é valioso saber de qualquer maneira, pois ajuda a ajustar seu ambiente de implementação.

Muitos sistemas de hospedagem Rails "prontos para o uso" são caros. EngineYard , Joyent e Heroku são ótimos exemplos disso, mas em todos os casos eles têm um valor superior à alternativa auto-hospedada.

Se você tem um cliente que pode pagar esse prêmio, vale a pena aproveitar seus conhecimentos. Se você estiver com um orçamento muito apertado, talvez não consiga justificar isso.

A solução de hospedagem Rails mais cara que eu conheço que funciona é usar o Linode com uma distribuição padrão combinada com o Passenger . Com alguns ajustes básicos, nada de especialmente difícil, você pode hospedar um site de pequena a média escala, mesmo na oferta mais barata. Uma máquina com 512 MB de memória normalmente pode hospedar de dois a três sites Rails carregados com pouca carga ou um ocupado. Por carregamento leve, quero dizer centenas de visitantes por dia. Ocupado é de milhares a tendências de milhares.

De fato, tive tantos problemas com hospedagem PHP compartilhada que não vale a pena economizar em fazê-lo dessa maneira. Em vez disso, tenho vários sistemas VPS no Linode que são especificamente para hospedagem PHP, blogs WordPress, normalmente, e têm um desempenho muito bom. Embora você possa achar um incômodo precisar entrar e consertar as máquinas de vez em quando, pelo menos você pode agendar isso e antecipar possíveis problemas em vez de ficar à mercê do seu provedor.

As empresas de hospedagem de commodities geralmente quebram as coisas acidentalmente e a restauração do serviço pode ser um processo demorado de problemas e chamadas telefônicas.

A implantação de qualquer aplicativo, Rails ou não, tem tudo a ver com fluxo de trabalho. Muitas ferramentas orientadas a Ruby, como Capistrano e Chef, podem facilitar o gerenciamento de aplicativos do que uma abordagem manual.

Minha opinião sobre o Rails: pode ser um pouco mais caro, mas é muito mais fácil gerenciar depois que você se acostuma com as ferramentas e automatiza seu fluxo de trabalho.

tadman
fonte
11
Uma boa visão geral sobre como hospedar trilhos, +1. A questão da hospedagem automática é que você precisa ser um pouco bom nisso, reservar algum tempo para cuidar da sua caixa com frequência e saber o que fazer quando isso acontece no meio da noite. Isso é o que sempre me manteve longe disso
Pekka suporta GoFundMonica
5

Não é uma resposta para sua pergunta, mas, para ser muito sincero, meu impulso inicial quando li sobre a configuração de sua empresa foi: "Por que ele não está apenas aderindo ao PHP?"

Não me entenda mal: tenho certeza de que Ruby é uma linguagem bonita e o Rails é um ótimo framework, e muito disso é, em muitos aspectos, superior ao PHP. Também é ótimo para um desenvolvedor explorar novos campos etc. etc.

Mas, do ponto de vista puramente comercial, o PHP está "onde está" em três coisas importantes no momento:

  • Hospedagem barata e

  • Software CMS para todos os gostos, tamanhos, níveis de habilidade e requisitos e cores favoritas. Alguns deles são até a meio caminho utilizáveis, e

  • Desenvolvedores acessíveis, alguns deles até na metade do caminho.

Portanto, se eu fosse você, verificaria se seus requisitos podem ser atendidos primeiro com o PHP.

Caso contrário, marque +1 por fazer uma pergunta muito ponderada e será interessante ver os resultados. Eu tenho visto trilhos acessíveis de hospedagem, mas é poucos e distantes entre si.

Pekka suporta GoFundMonica
fonte
Parece que o PHP está na metade do caminho em todas as contagens, por sua descrição. Na verdade, não é tão ruim quanto o ambiente e, da perspectiva dos negócios, codificando de lado, é apenas um componente para outro. Que tipo de desenvolvedores você tem disponível pode ser o fator determinante aqui.
Tadman
Obrigado. Espero não ter começado uma guerra com essa questão e que ela não se transforme nisso. Apenas tentando entender esse assunto da perspectiva de uma empresa e de um desenvolvedor aspirante (sem apego real a nenhuma linguagem ou paradigma específico).
@rcd, de nada. A única coisa é que essa pergunta pode ser melhor em Serverfault.com ou Webmasters.SE - se cinco pessoas votarem em conformidade, ela será automaticamente migrada para lá.
Pekka suporta GoFundMonica
Parece bom; Vou manter esses sites em mente a partir de agora; se devo fazer algo para movê-lo para lá (ou apenas repassá-lo para lá), informe-me; Posso desconhecer esse recurso.
3

Eu encontrei um host compartilhado rails muito bom: webfaction . Eu estou muito satisfeito com isso. Confira! Os preços são surpreendentemente baixos, eles oferecem instaladores em um clique para trilhos, o número de sites que você pode hospedar é ilimitado. A versão mais alta dos trilhos suportados é a 3.0.5 !!! :) Você tem acesso ssh ao seu compartilhamento, para ter controle total, pode implantar usando capistrano ou fazer coisas manualmente no servidor. Realmente fantástico.

A documentação deles é realmente boa e eles têm um fórum de suporte muito ativo para todas as outras perguntas.


fonte
1

Uma boa solução nova para esse antigo problema é o Digital Ocean .

Implantamos um aplicativo Rack e não é tão difícil. O preço começa em US $ 5 / mês / app.

Eles têm um aplicativo One-Click for Rails, que deve facilitar as coisas.

B Seven
fonte