J'ai récemment "mis à jour" mon application sur la plate-forme en cèdre de heroku. Par défaut, j'utilise thin
comme serveur Web. Mais j’ai toujours été tenté d’utiliser Unicorn
pour la concurrence et d’avoir mon dollar en poche. Mais je crains qu'il y ait des pièges à utiliser autre chose que Thin.
Quelqu'un at-il une expérience réelle de cette décision?
Merci!
Jonathan
Remarques:
Je veux savoir pourquoi tout le monde ne devrait pas le faire
Mise à jour - 3 mois plus tard.
J'utilise Licorne en production depuis 3 mois et j'en suis très heureux. J'utilise 4 travailleurs Unicorn par dyno.
Une chose à surveiller est la consommation de mémoire et les fuites. En fait, au lieu d’avoir 512 Mo de mémoire par dyno, vous divisez cela par le nombre de travailleurs de heroku. Mais gardez cela à l'esprit - cela a été une grande économie de coûts
Aucune raison de ne pas le faire - j'utilise Unicorn sur Heroku avec beaucoup de succès.
Heroku vient d'écrire un article sur l'utilisation de Licorne: https://blog.heroku.com/archives/2013/2/27/Unicorn_Rails
Je vais l'essayer maintenant, il semble que c'est la voie à suivre, à la fois pour la performance et la réduction des coûts.
Si vous utilisez Thin et que votre code n'efface pas les demandes très rapidement, vous rencontrez des problèmes. Comme Heroku utilise un routage aléatoire, les demandes s'empileront sur un dyno bloqué, même s'il existe des dynos libres. L'utilisation de Licorne semble préférable, si vous pouvez gérer les pertes de mémoire, car il est moins probable que toutes vos fourches reçoivent des demandes lentes en même temps. Cela ne résout pas le problème de routage aléatoire de Heroku, mais cela devrait aider beaucoup.
Liens et explications dans cette réponse: