Zitat von
Phoenix:
Kurz gesagt:
Ich sollte die Idee des 'lebenden' Weltmodells einfach vergessen und wirklich nur auf einzelne Anfragen reagieren.
Genau.
Zitat:
Wenn das ganze aber auch im Middle-Tier stateless ist, muss ich mir den defakto aber existierenden Status irgendwo merken. Und das heisst: letzlich hämmern dann N stateless middle-tier server für idealerweise roundabout ne halbe million clients für jede einzelnen request - also sicher mehr als zig millionen mal pro minute - auf die datenbank ein.
Schon, aber es werden wohl nur max. 3-mal soviele verschiedene Statements werden wie du Tabellen haben wirst.
Du kannst dir Factory bauen, die dir vorkompilierte Statement für einen gegebenen
SQL-String liefert (Läuft dann je eine Instanz auf für jedem WebServer).
Dadurch kannst du die Kosten für Parsing, Ablaufplangenerierung und Berechtigungsprüfung
rapide senken. Die letzten beiden Punkte kosten übrigens erheblich mehr Zeit als ein simples
SQL Statement wirklich braucht um ausgeführt zu werden.
Zitat:
Welches
dbms hält das denn aus?
Keines wird 1 Mio Requests/min auf einer Maschine aushalten. Aber du wirst nicht mit 1 Mio Requests auf einer Maschine beginnen, und du wirst selbst nachdem du schon eine Weile erfolgreich bist noch nicht diese Zahlen haben.
Du kannst mit wachsender Popularität weitere
DB server hinzustellen. (Ohne großes Kostenrisiko, mehr STress heißt ja auch mehr Kohle, right?)
Denn ein
DB Server für 100 WebServer wäre ein
wenig unverhältnismäßig, irgendwann wirst du auch
DB Server dazustellen müssen.
Aber plane so dass du anfangs schon mit weiteren, billigen WebServern auf einen erhöhten Ansturm reagieren kannst.