Ich habe pro Tag ein paar Tausend Aufrufe auf eine bestimmte Datei,
die auf eine andere Datei umgeleitet werden soll. Bei jedem Aufruf
soll eine Nummer zwischen 1 und 500 an die URL gehängt und zusamen mit
dem Referer und einem Timestamp in einer Datenbank gespeichert werden.
Wenn die letzte Nummer 344 war, soll 345 angehängt werden.
Wie kann ich das möglichst effizient umsetzen?
Mein erster Ansatz:
Eine Tabelle in der Datenbank mit den Zahlen 1 bis 500 und dem
Timestamp wann die Zahl jeweils zuletzt genutzt wurde. Kommt also ein
Aufruf, schaue ich welche Zahl schon am längsten nicht mehr genutzt
wurde (Abfrage). Diese wird dann an die Umleitung angehängt und in
einer zweiten Tabelle zusammen mit dem Referer und dem Timestamp
gespeichert werden (Insert). Dann wird die Zahl zusätzlich in der
ersten Tabelle noch mit dem neuen Timestamp versehen (Update).
Mein zweiter Ansatz:
Kommt ein Aufruf schaue ich in der Datenbank nach welche Zahl zuletzt
genutzt wurde (Abfrage). Diese wird erhöht, an die umleitung angehängt
und zusammen mit Referer und Timestamp in einer Tabelle gespeichert
(Insert).
Gibt es vielleicht eine noch effizientiere Möglichkeit?
Vielleicht ohne die erste Abfrage?
Nicht wirklich. Es geht hier um ne externe Werbekampagne und die Seiten erscheinen überhaupt nicht bei Suchmaschinen da der komplette
Ordner per robots.txt gesperrt ist.