Ich möchte eine Frage über Ansätze in Highload-Web-Anwendungen Entwicklung mit SQL-Datenbanken stellen. Angenommen, wir haben ein einfaches CMS-System, das Zugriff auf verschiedene Artikel bietet. Auch möchten wir Artikel Besuche Menge in der Datenbank speichern. Dieser Besucherzähler erhöht sich jedes Mal, wenn der Benutzer den Artikel ansieht.Highload Web-Projekte mit SQL-Datenbanken
In Bezug auf die SQL-Datenbank haben wir in der Tabelle "Artikel" ein Integer-Feld "visits", das wir jedes Mal erhöhen müssen, wenn der Benutzer den Artikel besucht. Wenn der Artikel eine große Anzahl gleichzeitiger Besuche aufweist, muss der Feldwert "Besuche" der aktuellen Datenbankzeile korrekt geändert werden.
Ich benutze pessimistischen Locking-Ansatz: "SELECT .. FOR UPDATE". Jedes Mal, wenn ein Benutzer einen Artikel besucht, sperre ich eine bestimmte Zeile in der Tabelle "Artikel" und erhöht den Zähler "Besuche".
Ist dieser Ansatz korrekt?
Ich benutze MySQL-Datenbank in meinen Projekten.
Könnten Sie bitte Ihre Belastungsbereiche in Zahlen angeben? das wäre großartig, deins – benjamin