Ruby, mysql et hébergement

MAGEMAGE Membre
23:41 modifié dans Langages Web & serveurs #1
ça fait quatre jours que je me bat avec mon mac et mon hébergeur pour faire tourner du RoR.

Avant, j'ai fait quelques test chez AllwaysData. L'avantage, c'est qu'il y a un serveur de développement directement en ssh. Mais les 10Mo gratuits n'ont pas suffit pour finir mes tests.

J'ai trouvé DreamHost qui fait du Ruby et qui avait  l'avantage de pouvoir héberger tous mes domaines pour un même forfait. Mais, c'est la que les soucis commencent : Possibilité uniquement de mettre des applis en production. Il fait que je fasse le dev sur le mac.

Je me dis qu'il faut que j'aie une base de données mysql pour que la transition soit aisée. Mais si j'ai pas de probème à  créer une appli en Ruby (normal, c'est déjà  tout prêt dans Mac Os X),c'est la galère pour faire une appli avec du mysql. Les infos disponibles sur  le net sont souvent contradictoires et ne m'ont pas aidé (parfois passant par Passenger, MacPort, etc).. Bref, j'en suis arrivé à  faire tellement n'importe quoi que j'ai du réinstaller plusieurs fois mon Mac et je me demande si c'est pas DreamHost la mauvaise idée ou si je suis juste incompétant ?

Réponses

  • muqaddarmuqaddar Administrateur
    23:41 modifié #2
    Hello Mage,

    1) Partie hébergeur :

    Mon hébergeur dont je suis très satisfait est : http://www.webfaction.com
    Tu peux y mettre X sites que ce soit du ROR, du PHP, du python, du wordpress...etc.
    Chaque site a son propre répertoire. C'est très clean comme installation.

    Ils ont une vidéo de démo de leur administration AJAX.
    Accès SSH.
    Bases en MySQL, SQLite ou PostgreSQL..
    Ils sont pas très chers (je paie dans les 12€/mois)
    Je crois qu'ils font 30 jours satisfaits ou remboursés.
    Le support est efficace.

    2) Partie Local sur ton mac

    Personnellement, j'évite MacPort (d'autres adorent).

    Ce tutorial m'a l'air pas mal :
    http://www.icoretech.org/2009/08/install-mysql-and-mysql-ruby-gem-on-snow-leopard-64-bit/

    3 ) Conseils

    Evite de développer directement sur le serveur !
    Rails est fait pour ça, tu as un fichier de config avec tes identifiants BDD pour le mode dev, test et prod. :-)

    Sinon, la dernière version stable de Rails est la 2.3.5, moi je suis resté en 2.1 pour des compatibilités de plugins.

    La 3.0 est en train d'arriver avec plein de nouveautés.

  • MAGEMAGE Membre
    23:41 modifié #3
    Merci pour ta réponse Muqaddar,

    1- J'avais vu ton commentaire sur webfaction, mais je trouvais un peu chero
    2- Je vais suivre tes conseils avisés comme toujours  ;) et laisser Macport.
    3- si tout fonctionne bien en sqlite sur mon Mac, je peux donc passer en mysql uniquement en mode production ? ça risque pas de coincer au niveau des configurations ? Mon hébergeur utilise Passenger, dois-je l'utiliser aussi ?
  • muqaddarmuqaddar Administrateur
    23:41 modifié #4
    1) 9,5$, soit 7€/mois, chero ? Boudiou, c'est le prix de 2 bières dans un bar !

    2) Tu peux sans problème utiliser SQLite en local et MySQL en prod, mais bon, autant tout faire en MySQL non (ne serait-ce que pour copier la structure des tables si tu ne passes pas par les outils de migration de Rails)

    3) Je suis sous Mongrel en local, et c'est le pied. Tu as aussi nginx si tu veux. Passenger, pourquoi pas, mais encore une fois tu n'es pas obligé de faire comme ton hébergeur en local.
  • MetablueMetablue Membre
    23:41 modifié #5
    Oh excuse moi je t'es pas répondu.

    Alors moi je suis chez Dédibox.

    C'est pas le plus économique mais vu que mon appli était avant tout dans le but que j'apprenne un compte root semblait le plus pédagogique. J'ai fais plein de recherche là  dessus demain je te retrouves tous les liens les plus utiles que j'avais trouvé.

    Pas de soucis a passer de SQLite a MySql en prod c'est ce que j'ai fais.

    Passenger j'ai eu de super retour dessus
  • MAGEMAGE Membre
    23:41 modifié #6
    9,5$, soit 7€/mois, chero ? Boudiou, c'est le prix de 2 bières dans un bar !
    Oui, tout est une question de point de vue. Ce que je suis en train de faire est déjà  un peu du bénévolat pour mon école, donc si je peux éviter d'ajouter encore des frais, c'est mieux  ;) C'est pour ça que je trouvais bien le illimité en espace et en trafic afin d'y ajouter mes autres sites.
  • zoczoc Membre
    23:41 modifié #7
    dans 1277327997:

    Passenger j'ai eu de super retour dessus

    J'utilise Passenger pour faire tourner mon "redmine", et franchement c'est le truc le plus simple pour faire tourner du rails en prod sans se casser la tête (vu qu'il n'y a absolument rien à  configurer à  part le chargement du module apache/nginx).

  • MAGEMAGE Membre
    23:41 modifié #8


    Merci, il semble que tout fonctionne en local... enfin !

    Maintenant je profite de poser encore une petite question pour aller plus loin :
    Si j'ai un hébergeur (dans mon cas il utilise Passenger), je modifie mon fichier database.yml en fonction de la nouvelle base mysql et que j'upload le projet, est-ce que cela devrait suffire ? Parce que ça fonctionne pas avec mon hébergeur  >:(
    Je vais contacter leur helpdesk, mais je vous pose la question avant  ;)
  • MetablueMetablue Membre
    23:41 modifié #9
    Ouaip !
  • naskaanaskaa Membre
    juillet 2010 modifié #10
    Merci beaucoup !  o:)
    Avec l'option gratuite sur alwaysdata, je vais pouvoir déployer mon petit site.
  • MAGEMAGE Membre
    23:41 modifié #11
    Oui et ça fonctionne bien. Seul soucis, c'est qu'on arrive vite aux 10 Mo et que c'est assez cher ensuite.

    Comme je le disais, mes autres tests sur Dreamhost sont pas très concluants et je pense que je vais me désinscrire. Bon, à  vrai dire sur ma machine personnelle aussi j'ai de multiples erreurs.. Peut-être vais-je suivre les conseils de Muqaddar et tester Webfaction..
  • naskaanaskaa Membre
    23:41 modifié #12
    Un fichier html c'est 1Mo, un javascript c'est 1Mo et la je parle de MEGA gros fichiers.
    Pour les images tu les héberges sur un site et tu pointes sur l'url. Dans ces conditions 10 Mo ca suffit pour un site d'informations ou un site personnelle, non ?
  • AliGatorAliGator Membre, Modérateur
    23:41 modifié #13
    Heu on doit pas avoir la même notion de la prog et des tailles de fichier...
    Si un jour tu vois un fichier HTML de 1Mo, c'est que tu as un super mega gros problème de conception (tu imagines le navigateur du client devoir attendre qu'il telecharge 1Mo de données ?) alors en plus vu que tu fais du PHP ou du Ruby ou autre, c'est beaucoup moins. En plus il me semble que Ruby utilise pas mal le MVC dans la conception de site avec le framework Rails, ce qui réduit d'autant la taille des fichiers.
    De même 1Mo de JS, même avec un gros framework, c'est qu'il y a un gros souci sur ton site (et qu'il est grand temps, en plus de revoir la conception de ton appli, de passer un coup de compresseur de code JS !!)

    Par contre tous les assets à  côté, que ce soit les images, les vidéos, la base de données et son contenu, etc. C'est évidemment ça qui prend de la place. Comme dans une appli iPhone d'ailleurs. Et là  les ressources sont volumineuses voire certaines peuvent tourner autour de 1MO chacune oui, alors tout cumulé on dépasse vite la limite. Tout dépend du contenu que tu présentes et donc des assets[/b] qu'il te sera nécessaire d'héberger...
  • MAGEMAGE Membre
    23:41 modifié #14
    Oui, sauf que j'ai été incapable d'installer le gem Datanoise ActionWebService à  cause de ça. Bon en regardant, c'est vrai que c'est bizarre, car il n'est pas bien lourd non plus... je vais chercher pourquoi je suis déjà  à  10Mo sans images et sans gros fichiers...
  • MetablueMetablue Membre
    23:41 modifié #15
    dans 1279004378:

    Oui, sauf que j'ai été incapable d'installer le gem Datanoise ActionWebService à  cause de ça. Bon en regardant, c'est vrai que c'est bizarre, car il n'est pas bien lourd non plus... je vais chercher pourquoi je suis déjà  à  10Mo sans images et sans gros fichiers...


    J'parie à  10 contre 1 que c'est tes fichiers de log.
    Ca grossis plus vite que les dindes de Noël ces petites bêtes
  • MAGEMAGE Membre
    23:41 modifié #16
    Perdu  :P

    J'ai recontrôlé :
    6 Mo pour les fichiers du site avec les logs
    14M pour les gems. Json par exemple prend plus de 3 Mo tout seul. C'est visiblement la doc qui est très volumineuse (2.7 Mo)
  • naskaanaskaa Membre
    juillet 2010 modifié #17
    Aligator mes fichiers en entreprise actuellement sont de l'ordre de 8Ko en html et 200 Ko en Js. Donc oui ! j'ai exagéré  ;D mais c''était juste pour dire loader 10 Mo, ce n'est pas évident.

    gems ! c'est quoi ca ?
  • MAGEMAGE Membre
    23:41 modifié #18
    [mode explication de débutant en ruby]C'est une sorte de plugin pour RoR [/mode explication de débutant en ruby]
  • MetablueMetablue Membre
    23:41 modifié #19
    J'oser pas me lancer mais maintenant que tu l'as fais.
    [mode explication de débutant en ruby]
    J'utiliserais plutôt le terme à  de la gestion de Framework et en faite gems tu peux comparer ça à  un [Mode Ubuntu]Synaptic[/Mode Ubuntu] pour les Framework
    [/mode explication de débutant en ruby]

    Fin moi la comparaison avec Synaptic mais venu tout de suite
  • muqaddarmuqaddar Administrateur
    23:41 modifié #20
    Gems est un gestionnaire de paquets pour installer tout un tas d'extensions sur ta machine en rapport avec Ruby ou RoR.

    A la différence d'un plugin, les gems fonctionnent avec toutes les applications de la machine par défaut, alors que les plugins il faut les copier dans le répertoire "plugins" de chaque projet RoR.

    Par exemple :
    gem install json
    
  • naskaanaskaa Membre
    23:41 modifié #21
    merci
  • MAGEMAGE Membre
    23:41 modifié #22
    J'ai finalement prix un abo chez Dreamhost pour mon serveur Rails. Quelques petites difficultés de configuration et une vitesse pas brillante, je m'y étais habitué.

    Le problème est à  présent que je suis incapable de faire tourner Rails 3 sur Dreamhost. (Aucun problème en local par contre). Donc je me repose la question de changer de fournisseur.

    Ainsi est-ce que muqaddar est toujours satisfait de webfaction ?
    En suivant les infos de ci et de là , Heroku remporte pas mal de suffrage, malgré un prix élevé en fonction de l'utilisation
    Je suis tombé sur hostingrails qui propose une action en ce moment.

    Autre option qui serait devrait alors trouver une autre source de financement, macminicolo

    Je me rends compte que c'est la plus grande difficulté avec Rails, l'hébergement !
  • muqaddarmuqaddar Administrateur
    23:41 modifié #23
    Oui.

    J'ai toujours une dizaine de sites chez webfaction, et ça tourne plutôt bien.
    Essaie chez eux : ils te remboursent sur 60 jours si t'es pas content.

    J'ai essayé hosting rails avant mais je trouvais leur admin moins simple...
  • MAGEMAGE Membre
    23:41 modifié #24
    T'es passé en V.3 avec rails ?

    Essaie chez eux : ils te remboursent sur 60 jours si t'es pas content.

    Oui, sauf qu'il faut tout de même acheter un nouveau nom de domaine en attendant de transférer l'autre si jamais c'est définitif.
  • muqaddarmuqaddar Administrateur
    23:41 modifié #25
    Oui je suis entre 3.0.1 et 3.0.5, ça dépend des sites.

    Quand t'ouvres un compte, même si tu fais pointer aucun nom de domaine, tu as ton nom de user par défaut:
    mage.wefactional.com pour tester ton site.

    Pour rails 3.0, ils t'installent direct le dossier rails (nginx, ruby 1.8.7 enterprise edition et rails) dans un répertoire. T'as plus qu'à  mettre tes fichiers et redémmarer le serveur avec bin/restart.

    Si t'as des soucis, ça viendra de plugins ou gem...
  • MAGEMAGE Membre
    23:41 modifié #26
    merci

    je vais tester alors. Et je donnerai mon avis dans quelques temps.
  • Je me suis inscrit à  Webfaction et déposé mes fichiers. C'est un peu tôt pour faire une conclusion, mais je suis plutôt satisfait de la vitesse.

    Si j'ai bien compris, ils ne s'occupent pas de l'enregistrement du nom de domaine. Puis-je demander également un conseil de ce côté là  ?
  • muqaddarmuqaddar Administrateur
    Demande moi tout ce que tu veux qui tourne autour de Rails. image/wink.png' class='bbc_emoticon' alt=';)' />
  • 'muqaddar' a écrit:


    Demande moi tout ce que tu veux qui tourne autour de Rails. image/wink.png' class='bbc_emoticon' alt=';)' />


    Merci, je saurai m'en souvenir image/wink.png' class='bbc_emoticon' alt=';)' />



    Vu que Webfaction ne s'occupe pas des nom de domaines, quel service utilises-tu ou conseilles-tu ?



    nb : je ne reçois plus d'avertissement lors de l'ajout d'un nouveau post alors qu'il est indiqué que je suis le sujet.
  • muqaddarmuqaddar Administrateur
    J'achète les domaines chez OVH (moins cher que Gandi).

    Ensuite je fais pointer sur WebFaction (ns1.webfaction.com, ns2.webfaction.com...etc)



    Si tu ne reçois plus d'avertissement, ça vient sûrement de ta config smtp ou sendmail (si tu parles de ça).
  • Super ! J'ai suivi tes conseils et tout fonctionne à  merveille.



    nb : je parle de recevoir un mail lorsqu'un nouveau post est ajouté au fil de discussion. Il me semble que c'est bien activé dans mes notifications et je n'ai pas changé d'adresse mail...
Connectez-vous ou Inscrivez-vous pour répondre.