Welche Serverkonfigurationen verwenden Sie in Ihren Projekten? Sollten Sie sich für alles auf Amazon Web Services verlassen? EC2, S3, RDS und Cloudfront? Oder ist es besser, separate Dienste zu nutzen, wie z. B. Amazon nur für S3, während Digital Ocean für Discourse und vielleicht Fastly als CDN verwendet wird?
Ich würde gerne wissen, wie Sie dieses Forum, aber auch andere bestehende Communities verwalten, um zu verstehen, was getan werden sollte.
Es hängt wirklich von Ihrem Ziel und Ihren Anforderungen ab.
Alles in einem $5-Droplet laufen zu lassen, ist großartig und für die meisten Hobby-Communities ausreichend. Es gibt sehr große Discourse-Seiten, die auf einer einzigen Maschine laufen und einfach vertikal skaliert werden, je nach Bedarf.
Enterprise- und Business-Websites entscheiden sich möglicherweise für ein komplexeres Setup, das öffentliche Cloud-Dienste nutzt, um eine strenge SLA zu erreichen, oder lagern das Hosting an einen professionellen Hoster wie Discourse pricing | Discourse - Civilized Discussion aus.
Ich verwende einen $20 DO Droplet für meine Website, Cloudflare davor und S3-Speicher im Backend. Meine Website hat insgesamt etwa 400.000 Beiträge mit durchschnittlich etwa 10.000 Sitzungen/Tag laut Google Analytics.
Ich bin neu in dieser Community, habe aber in der Vergangenheit Erfahrungen in der Webentwicklung gesammelt. Ich bin jedoch eine Person, die Dinge gut machen und alles bestmöglich verwalten möchte. Ich denke sehr groß! Und ich finde, dass die Idee, die Datenbank und Uploads getrennt zu verwalten, wirklich gut ist. Aber ich habe Schwierigkeiten zu entscheiden, ob ich alles mit AWS unter Verwendung ihrer Produkte verwalten soll oder nicht. Zum Beispiel das Vendor Lock-In. Offensichtlich gibt es kein Problem, wenn man EC2 mit einer Standard-Linux-Distribution wie Ubuntu und RDS für die PostgreSQL-Datenbank verwendet, aber mit S3 oder vielleicht unter Verwendung anderer Anbieterstandards und -funktionen wie Lambda könnte dies ein Problem sein, wenn man zu einem anderen Server-Hosting migrieren möchte.
Basierend auf dem, was Sie gesagt haben, empfehle ich Ihnen, mit einer einzelnen EC2 zu beginnen, um die Dinge zu klären. Wenn Sie später zu RDS (und Elasticache) und S3 wechseln möchten, können Sie dies tun, wenn Ihre Bedürfnisse und Ihr Budget dies erfordern und zulassen.
Letzte Frage. Um S3 zu nutzen, braucht man ein CDN, richtig? Aber dasselbe CDN, das für die Website verwendet wird, oder sollte ein anderes CDN speziell für die Daten konfiguriert werden, die auf S3 geladen werden?
Ich würde entweder Cloudfront oder Fastly für beides verwenden. Die Verwendung mehrerer Anbieter für exakt dasselbe Produkt in einer einzigen Instanz klingt unnötig kompliziert.
Wenn wir „ein weiteres CDN“ sagen, meinen wir eine weitere „CDN-Distribution“ oder „CDN-Instanz“. Nicht buchstäblich ein weiteres CDN-Unternehmen.
Ich verlasse mich nicht auf Amazon für irgendetwas.
Ich würde niemals eine Lösung verwenden, die nicht als Standard gilt und daher nicht einfach woanders migriert werden kann.
Ein traditioneller virtueller Server leistet hervorragende Arbeit. Ich kann den Anbieter in Zukunft problemlos wechseln, wenn ich möchte.
Welche Alternativen zu EC2, S3, RDS und Elasticache würden Sie empfehlen? Ich meine Standardlösungen, um, wie Sie sagen, das Problem des Vendor Lock-In zu vermeiden.
Ich habe Web-Apps auf allen dreien (AWS, Linode und Digital Ocean) verwaltet. Ich bevorzuge Linode und DO. Ich fand sie günstig, solide und vor allem einfacher zu verwalten. Ich war die einzige technische Person in einem winzigen kleinen Unternehmen, daher waren das wirklich wichtige Faktoren für mich.
Es ist wirklich nicht schwer, den Diskurs auf eine andere Plattform zu verlagern. Selbst wenn Sie all diese AWS-Tools verwenden, können Sie ein Backup erstellen und es auf jeder Discourse-Installation wiederherstellen.
DO und Linode (zusammen mit Hunderten von ähnlich bepreisten konkurrierenden Cloud-Anbietern) sind weitaus kostengünstiger (etwa 10 % der Kosten, nach meiner Erfahrung) als AWS oder MS Azure für gleichwertige Dienste und es ist weitaus unwahrscheinlicher, dass Sie Dinge mit deren proprietären APIs und Schnittstellen erstellen müssen, was die Umstellung auf einen anderen Commodity-Hosting-Anbieter behindert. Ich würde dringend empfehlen, anbieterneutral zu bleiben und sich von AWS und MS Azure fernzuhalten.