Considérant que vous êtes une startup sans fonds pour votre propre batterie de serveurs. Quelle solution existante peut vous assurer que toute augmentation soudaine du trafic ne fera pas tout baisser.
Je sais que ce n’est pas uniquement du matériel, nous prévoyons donc au moins un équilibreur de charge, un memcache et quelques serveurs de base de données.
Est-il possible d'avoir une configuration sur AWS qui ajouterait automatiquement des instances et de la bande passante si le trafic augmentait?
Quels autres conseils pouvez-vous donner aux noobs en déploiement? Merci.
ps: Je m'excuse par avance si une question est trop large ou reflète une inexpérience sur les sujets mentionnés, mais c'est pourquoi je le demande.
Heroku. Parce que vous êtes une start-up, gardez les choses en place et rien ne sera plus maigre que presque libre (avec 1 dyno + une petite base de données partagée). Passez du temps à construire votre produit et non à l'infrastructure. Vous ne voulez pas installer de correctifs alors que vous devriez parler aux clients. Heroku est également flexible et vous permet d’intensifier les «dynos» à mesure que votre trafic augmente, ne vous inquiétez donc pas pour la croissance là-bas. Cependant, Heroku ne s'adapte pas automatiquement à vous, alors surveillez votre propre serveur. Les add-ons Heroku sont aussi Nice.
Récemment, nous avons fait une très bonne comparaison entre AWS et Heroku et nous avons décidé de nous installer à Heroku. Voici le détail de ceci http://www.confiz.com/blog/tech-session/selecting-the-right -cloud-platform/
Si vous utilisez Python, vous pouvez essayer Google App Engine .
La migration de l'application Python d'une plate-forme à une autre n'est pas trop difficile une fois que vous avez dépassé la courbe d'apprentissage en ce qui concerne les fonctionnalités disponibles (ou non). GAE propose un datastore, un memcache, un blobstore et quelques autres goodies comme Django et Jinja (modèles). Cela vaut la peine de consulter la page de démarrage Python et je n’ai pas tardé à l’intégrer également dans Facebook et Dropbox.
BitNami pour Amazon EC2 inclut des versions prêtes à l'emploi d'Apache, MySQL, PostgreSQL, SQLite, Python, Django, Git, leurs dépendances requises et bien plus encore. Il peut être déployé via des programmes d’installation natifs gratuits, des machines virtuelles et des images en nuage. peut-être intéressant de vérifier.
Découvrez cette série de blogs que je commence car j'ai trouvé que Heroku n'était pas du tout évolutif du point de vue financier par rapport à EC2 et Digital Ocean. Vous allez montrer comment mettre une application Ruby sur Digital Ocean en utilisant Docker, ce qui vous offre la même souplesse et la même capacité d’agrandissement et de réduction très rapidement https://medium.com/@karimbutt/weaning-off-heroku- part-1-b7f123ae855f
Restez à l'écart de Heroku. Vous pouvez obtenir gratuitement EC2 pendant un an sur Amazon. La mise à l'échelle du heroku est extrêmement coûteuse. Leur tarification a tendance à ne pas être claire et leur service client en général est nul.
Cela dépend énormément que vous recherchiez un PaaS, IaaS ou SaaS, et quelle langue utilisez-vous.
Selon vos besoins, d’autres plates-formes entrent en jeu. Vous pouvez également consulter cette comparaison: https://dictativ.com/compare/paas
Mon expérience personnelle est que vous devriez généralement commencer par Heroku. Obtenez votre application dans la nature et trouvez ce produit/ajustement au marché ou tout type de traction. Vous saurez que vous allez quelque part parce que les clients vont causer des problèmes de dimensionnement. Dans ce cas, Heroku vous permettra d’évoluer avec très peu de frais généraux. Et pendant un certain temps, cette mise à l'échelle ne vous frappera pas dans le portefeuille.
Passez à AWS lorsque vous êtes prêt. Quand seras-tu prêt? Lorsque vous avez assez de douleur, dans le portefeuille, vous avez besoin de plus de contrôle sur la pile. Vous pouvez engager un type de devops AWS ou en apprendre davantage vous-même.
Heroku et AWS proposent des solutions de mise à l'échelle automatique, mais alors que Heroku a une courbe d'apprentissage relativement plate - c'est ce que vous payez - AWS peut devenir large et raide assez rapidement. Un cours Udemy AWS ou l’une des centaines d’autres ressources en ligne vous permettra de commencer à construire une architecture AWS robuste.
Enfin, même si les performances ne doivent pas être votre principale préoccupation, assurez-vous d’appliquer les meilleures pratiques de votre code. Votre premier utilisateur ne doit pas amener votre système à une analyse. Et AWS ne l'aidera pas si elle le fait.
J'espère que cela aide d'une certaine manière.
Ceci a été mon expérience. Pour cette raison, mes kits de démarrage Saas sont conçus pour être déployés hors de la boîte à Heroku. Cependant, les kits de démarrage sont également conteneurisés. Je sais que vous avez explicitement parlé d'AWS, mais avec les conteneurs, vous pouvez être agnostique en matière d'infrastructure. Cela mérite d'être considéré!
Ted [at] https://stacksimple.io