Angenommen, Sie haben diese schicke neue Website mit vielen Daten (wie großen Bildern) und möchten sie gleich online stellen. Wenn Sie in den ersten Tagen zu viel Werbung machen, wird die Website mit Anfragen überfordert sein.
Wie kann ich dieses Risiko mindern?
Ich habe darüber nachgedacht
- Going Live nach und nach, wie SO und SF: "Private" Beta, Public Beta, Public
- erlaube X
VerbindungenSitzungen gleichzeitig, damit der verbundene Benutzer immer noch gute Erfahrungen mit der Site hat und die anderen eine nette Entschuldigungsnachricht erhalten
Ich kann nicht
- kaufe mehr Server, da die Seite nach den ersten Tagen viel weniger Verkehr haben wird :)
performance
website
optimization
traffic
Mathieu
quelle
quelle
Antworten:
Nach und nach live zu gehen, kann für SOF und SF funktionieren, da sie aufgrund der Beliebtheit der Blogs von Jeff und Joel bereits über eine integrierte Publizität und Nachfrage verfügen. Wenn Sie nicht über eine nahezu garantierte Nutzerbasis wie diese verfügen, kann ein schrittweiser Live-Betrieb fatale Folgen haben.
Ich würde vermeiden, durch gleichzeitige Sitzungen zu beschränken, da es schwierig ist, das Ende einer Sitzung zu definieren, das durch Inaktivität verursacht wird. Wenn ein Benutzer für 15 Minuten verlässt und versucht, seine Seite neu zu laden, wird nur eine Fehlermeldung angezeigt - Sie haben gerade einen Benutzer verloren.
quelle
Wie viel Planung steckte in Ihrem Datenmodell? Haben Sie ein Schema entworfen, mit dem Sie Ihr Abfragevolumen ohne teure Sortierungen, binäre Spalten oder komplexe Verknüpfungen erhöhen können? Haben Sie Ihr Datenbank-Backend optimiert (vorausgesetzt, Sie haben eines)?
Wie servieren Sie Ihre "großen Bilder"? Können Sie das auf einen separaten Webserver-Prozess aufteilen, sogar auf eine separate Domain?
Haben Sie Ihr System geladen und getestet? Tools wie ApacheBench und Siege sind von unschätzbarem Wert.
Ist deine gesamte Konfiguration in svn? Ist Ihre Bereitstellung automatisiert? Das freut Sie, wenn Sie unsere Anwendung auf den 2. Server ausrollen müssen.
quelle
Ein Einladungssystem kann manchmal eine gute Möglichkeit sein, die Nutzerakzeptanz einer Website zu steuern. Verteilen Sie zu Beginn eine bestimmte Anzahl von Einladungen, damit die Website nicht überfordert wird. Geben Sie dann jedem Benutzer ein paar Einladungen, um sie an andere weiterzugeben, und erhöhen Sie langsam die Anzahl der Benutzer auf der Site. Auf diese Weise werden zu Beginn nicht zu viele Besucher auf die Website gelandet, und es kommt nicht zu einem massiven Verkehrsaufkommen.
Der Nachteil ist natürlich, dass Sie zu Beginn möglicherweise viele Benutzer abweisen, die keine Einladungen haben und später möglicherweise nicht zurückkehren. Wenn Sie nicht über eine wirklich gute Website verfügen, für deren Nutzung sich die Leute sehr freuen, könnte dies ein schlechter Schachzug sein. Es kommt wirklich auf die Seite an. Außerdem müsste tatsächlich etwas zusätzliche Entwicklungszeit aufgewendet werden, um ein Einladungssystem hinzuzufügen.
quelle
Ich würde sicherstellen, dass Sie vor dem Start über eine robuste Überwachungsinfrastruktur verfügen. Sie benötigen Daten, auf denen Ihre Entscheidungen basieren. Dies bedeutet, dass Sie die CPU-Auslastung auf den Servern messen und sicherstellen, dass die Auslastung gleichmäßig auf die Boxen verteilt ist.
Wenn Sie wissen, wo sich das Problem befindet, verkürzt sich die Reaktionszeit erheblich. Ich habe zu viele Sites gestartet, die keinerlei Überwachung hatten, mit der Absicht, dass sie später eingerichtet werden ... nachdem das Feuer erloschen ist. Das ist zutiefst falsch.
quelle
Möglicherweise möchten Sie Drittanbieter-Hosting für statische Inhalte wie Amazon S3 prüfen. Abhängig von Ihrer Anwendung kann es sinnvoll sein, einige (so sehr ich das Schlagwort hasse) mithilfe von Amazon EC2 zu trüben.
quelle
Bei einigen Hosting-Anbietern können Sie private Server mit maximaler Kapazität für eine Weile testen und sich dann nach dem Testzeitraum auf eine angemessene Kapazität einigen.
DreamHost ist ein Beispiel:
http://www.dreamhost.com/hosting-vps.html
quelle