Quelqu'un peut-il expliquer le véritable paysage du déploiement Rails vs PHP, en particulier dans le contexte de l'hébergement Web basé sur un revendeur (par exemple, Hostgator)?


15

Actuellement, j'ai un compte revendeur avec la société HostGator. Je conçois des sites Web, qui jusqu'à présent étaient parfois enveloppés dans des CMS Wordpress et similaires (applications PHP). Je vends ensuite l'hébergement (du site que j'ai conçu) au client, ce qui est assez simple, en ce sens que je peux simplement cliquer sur un bouton et ajouter un nouveau compte / site d'hébergement partagé avec les paramètres que je veux. De plus, j'utilise ensuite WHMCS pour automatiser la facturation et la gestion des comptes.

C'est un joli paquet et assez simple. Je paie quelque chose comme 25 $ par mois et je peux vendre une centaine de comptes (car les besoins en bande passante de mes clients sont faibles).

Maintenant, je trouve la nécessité de développer des applications plus personnalisées, y compris un CMS minimaliste et plusieurs choses propriétaires. Je prévois bientôt de développer également ces applications pour les clients. Ainsi, j'ai passé les derniers mois à apprendre Rails, et ça se passe bien maintenant.

La chose qui m'a harcelé tout au long, cependant, est le problème de déploiement. Je ne peux pas envelopper mon cerveau autour de ça. Il semble que toutes les options populaires (Heroku, etc.) ont une belle automatisation avec git et sont configurées de la manière "Rails". Je comprends cela (en quelque sorte). Mais c'est terriblement cher ... un seul dynamo, une aide et la base de données la moins chère (qui, selon eux, est principalement adaptée aux tests) qui n'est pas limitée à 5 Mo, coûte 51 $. C'est pour UNE application !!! Ajoutez une base de données "production" et vous êtes plus de 200 $. C'est comme ... les mêmes prix que pour obtenir un serveur quelque part, non?

Pendant ce temps, pour en revenir à ce que je suppose être un environnement d'hébergement "traditionnel" avec Hostgator, leur serveur n'a que Ruby 1.8.7 et Rails 2.3.5 ... Pas de Rails 3. ET, pas de Passager (pas que je comprenne vraiment la différence dans CGI ou mod_rails ou autre, mais ils disent que Passenger est le plus simple). Je dois donc comprendre que si je crée une application dans Rails 3, elle ne fonctionnera pas du tout sur cet hôte? Mais bon sang, j'ai déjà ces comptes sous mon compte revendeur là-bas, tous exécutant des trucs statiques html et / ou PHP, non? Et maintenant? Comment obtenir tout cela sous un même toit simple (et abordable)?

Pardonnez mon ignorance, mais je ne comprends tout simplement pas. La gestion d'un VPS est cool et tout, mais implique d'apprendre des trucs d'administration et de sécurité du serveur ... Et c'est cher. J'obtiens qu'un partage et / ou un revendeur "basé sur le serveur" (pardonnez la terminologie) peut être inadéquat pour les applications à grande échelle qui utilisent beaucoup de bande passante ... Mais qu'en est-il pour ceux d'entre nous qui construisent réel (mais petit et à faible bande passante) (avec Rails) et qui veulent les déployer simplement, à moindre coût, en utilisant la même approche conceptuelle que PHP? Même après avoir appris tous ces trucs Ruby and Rails pendant des mois, je me demande si cela en vaut la peine en matière de déploiement. Je veux créer une petite application, la télécharger dans mon répertoire personnel sur un compte de serveur partagé et la faire fonctionner. Pourquoi cela devrait-il être si difficile? Suis-je en train de choisir le mauvais langage / cadre?

Pardonnez mon ignorance sur le sujet; ces questions ne sont pas rhétoriques; essayant juste d'apprendre ici.

Donc:

1) J'apprécierais que quelqu'un me donne un bon aperçu de la façon de comprendre le déploiement dans Rails vs PHP.

2) J'apprécierais que quelqu'un puisse résoudre mon problème avec la gestion d'une entreprise d'hébergement / Web autour de l'hébergement de revendeur (Hostgator) tout en étant capable d'héberger des applications Rails. Peut-on le faire? Et comment une entreprise comme Hostgator peut-elle ignorer complètement les actualités de Rails / Ruby?

Merci.


2
+1 pour ne pas avoir dit "hé, je vais juste louer un VPS! Je ne serai pas piraté parce que j'ai des mises à jour automatiques, non?"
Pekka

4
@closevoters si vous devez fermer le vote, au moins voter pour le migrer vers serverfault ou des webmasters. C'est une question parfaitement fine, et pas du tout argumentative
Pekka

Réponses:


9

Bien que l'hébergement Rails ne soit probablement jamais aussi bon marché que PHP, puisque les besoins en infrastructure sont toujours plus élevés, l'hébergement d'un site Rails ne coûte pas cher.

Il faut une certaine quantité de compétences techniques pour déployer correctement un serveur basé sur Linux et charger sur Rails et tout le back-end de base de données associé, mais ce n'est pas un obstacle insurmontable. Tout programmeur compétent pourrait probablement se mettre au courant en quelques semaines avec seulement quelques heures par jour et un bon livre de référence. C'est le genre de chose qu'il est important de savoir de toute façon car cela vous aide à régler votre environnement de déploiement.

De nombreux systèmes d'hébergement Rails "prêts à l'emploi" sont chers. EngineYard , Joyent et Heroku en sont de bons exemples, mais dans tous les cas, ils ont un prix supérieur à l'alternative auto-hébergée.

Si vous avez un client qui peut se permettre cette prime, cela vaut la peine de profiter de son expertise. Si vous avez un budget très serré, vous ne pourrez peut-être pas le justifier.

La solution d'hébergement Rails la moins chère que je connaisse qui fonctionne est d'utiliser Linode avec une distribution standard combinée avec Passenger . Avec quelques réglages de base, rien de particulièrement difficile, vous pouvez héberger un site à petite ou moyenne échelle, même sur leur offre la moins chère. Une machine avec 512 Mo de mémoire peut généralement héberger deux à trois sites Rails légèrement chargés ou un site occupé. Par légèrement chargé, j'entends des centaines de visiteurs par jour. Occupé, c'est des milliers à des milliers.

En fait, j'ai eu tellement de problèmes avec l'hébergement PHP partagé que cela ne vaut pas la peine de le faire de cette façon. Au lieu de cela, j'ai plusieurs systèmes VPS sur Linode qui sont spécifiquement pour l'hébergement PHP, les blogs WordPress, généralement, et ils fonctionnent très bien. Bien que vous puissiez trouver gênant de devoir réparer les machines de temps en temps, vous pouvez au moins planifier cela et anticiper les problèmes potentiels au lieu d'être à la merci de votre fournisseur.

Les sociétés d'hébergement de produits cassent souvent les choses accidentellement et la restauration du service peut être un processus fastidieux de tickets d'incident et d'appels téléphoniques.

Le déploiement de n'importe quelle application, Rails ou autre, est une question de workflow. De nombreux outils orientés Ruby comme Capistrano et Chef peuvent rendre la gestion des applications beaucoup plus facile qu'une approche manuelle.

Mon point de vue sur Rails: Cela peut être un peu plus cher, mais c'est beaucoup plus facile à gérer une fois que vous vous êtes habitué aux outils et automatisez votre flux de travail.


1
Un bon aperçu sur la façon d'héberger des rails, +1. La chose à propos de l'auto-hébergement est que vous devez être quelque peu bon dans ce domaine, réserver du temps pour prendre soin de votre box fréquemment et savoir quoi faire lorsque cela se produit au milieu de la nuit. C'est ce qui m'a toujours tenu à l'écart
Pekka

5

Pas une réponse à votre question, mais pour être très honnête, mon élan initial lorsque j'ai lu la configuration de votre entreprise était: "Pourquoi ne s'en tient-il pas simplement à PHP?"

Ne vous méprenez pas: je suis sûr que Ruby est un beau langage, et Rails un excellent framework et une grande partie est à bien des égards supérieure à PHP. C'est également idéal pour un développeur d'explorer de nouveaux domaines, etc., etc.

Mais d'un point de vue purement commercial, PHP est sans doute «où il en est» pour trois choses importantes pour le moment:

  • Hébergement pas cher, et

  • Logiciel CMS pour tous les goûts, toutes les tailles, tous les niveaux de compétence, toutes les exigences et toutes les couleurs préférées. Certains d'entre eux sont même utilisables à mi-chemin, et

  • Des développeurs abordables, certains d'entre eux étant même à mi-chemin.

Donc, si j'étais vous, je chercherais à savoir si vos exigences peuvent être satisfaites avec PHP en premier.

Sinon, +1 pour avoir posé une question très réfléchie, et ça va être intéressant de voir les résultats. Je l' ai vu des rails abordables d' hébergement , mais il est peu nombreux.


Cela ressemble à PHP est à mi-chemin sur chaque compte par votre description. Ce n'est vraiment pas si mal en ce qui concerne l'environnement, et d'un point de vue commercial, en dehors du codage, ce n'est qu'un composant pour un autre. Le type de développeurs dont vous disposez pourrait être le facteur déterminant ici.
tadman

Merci. J'espère que je n'ai pas déclenché une guerre avec cette question, et que cela n'aboutira pas à cela. J'essaie simplement de comprendre ce genre de choses du point de vue d'une entreprise et d'un développeur en herbe (sans réel attachement à un langage ou à un paradigme particulier).

@rcd vous êtes les bienvenus. La seule chose est que cette question pourrait être mieux sur Serverfault.com ou Webmasters.SE - si cinq personnes votent en conséquence, elle y sera automatiquement migrée.
Pekka

Ça m'a l'air bien; Je garderai ces sites à l'esprit à partir de maintenant; si je dois faire quelque chose pour le déplacer là-bas (ou simplement le republier là-bas), faites-le moi savoir; J'ignore peut-être une telle fonctionnalité.

3

J'ai trouvé un très bon hôte partagé sur rails: webfaction . J'en suis vraiment satisfaite. Vérifiez-le! Les prix sont incroyablement bas, ils proposent des installateurs en un clic pour les rails, le nombre de sites que vous pouvez héberger est illimité. Leur version de rails la plus élevée prise en charge est 3.0.5 !!! :) Vous avez un accès ssh à votre partage, vous avez donc un contrôle total, vous pouvez déployer en utilisant capistrano, ou faire des choses à la main sur le serveur. Vraiment génial.

Leur documentation est vraiment bonne et ils ont un forum de support très actif pour toutes les autres questions.


1

Digital Ocean est une bonne nouvelle solution à ce vieux problème .

Nous avons déployé une application Rack et ce n'est pas si difficile. Le prix commence à 5 $ / mois / application.

Ils ont une application One-Click pour Rails qui devrait faciliter les choses.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.