Frage

Derzeit entwickle ich eine API, die AJAX-Intervallabfragen verwendet. Sie werden alle 1,5 Minuten mit 900 Byte abgefragt, scheinen MySQL nicht stark zu belasten und sind nur ein AJAX-Stream. Ich plane ein Upgrade auf einen node.js-Server, sobald ich mit diesem Start genügend Einnahmen erzielt habe. Ab sofort kann ich mir jedoch nur den Kauf eines gemeinsam genutzten Hosts leisten, der Apache verwendet.

In Bezug auf die Skalierbarkeit wäre dies realisierbar? Wäre dies auch von einem kommerziellen Standard aus akzeptabel, da jetzt andere Lösungen wie Comet verfügbar sind?

War es hilfreich?

Lösung

"scheint MySQL nicht stark zu belasten"

Für einige Benutzer muss es irgendwann eine "schwere" Last aufbringen, aber das ist keine "schlechte Sache".

Für jede Anwendung, die auf irgendeine Weise aufgebaut ist, gibt es einen Punkt, an dem ein Teil der Infrastruktur knarrt. Dies ist kein wesentlicher Grund, eine komplexere Lösung zu wählen (und den Engpass an eine andere Stelle zu verschieben).

Sammeln Sie also einige empirische Daten, z. B.: Für wie viele Anwendungen wird diese Abfragelast signifikant? Führen Sie einige Auslastungstests durch, nicht nur zum Abrufen, sondern auch zu den anderen Arbeiten, die diese Benutzer ausführen. Sie fragen sicherlich nicht nur ab, sondern machen auch andere Dinge, die auch MySQL laden. Wann knarrt das? Würden Sie zu diesem Zeitpunkt mit den daraus resultierenden Einnahmen mehr Kapazität kaufen können? Oder hätten Sie das Vertrauen, dass eine andere Architektur das Problem beheben würde? Mit anderen Worten, haben Sie ein realistisches "out"?

Ich vermute, wenn das Abrufen zu einem Problem wird, haben Sie neben der Möglichkeit, Comet einzuführen, einige gute Zwischenlösungen wie das Zwischenspeichern oder das Verringern der Abrufhäufigkeit. Beginnen Sie also mit Ihrer einfachen Abfragestrategie.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top