mal was Allgemeines zu dieser "Beitrag geschrieben, wird aber nicht angezeigt und irgendwann taucht der dann doch auf"-Problematik:
Damit unsere Datenbank-Server unter der Last eurer ganzen Anfragen nicht zusammenbrechen, setzen wir hier ziemlich exzessiv Cache-Systeme ein. Das heißt: Wenn irgendwas aus der Datenbank ausgelesen wird, dann werden diese Daten zusätzlich gleich in einem Cache hinterlegt. Wenn nun der nächste Seitenaufruf von irgendjemand anderen nach den gleichen Daten fragt, können diese aus dem Cache geholt werden. Das hat den Vorteil, dass dieser Cache um ein vielfaches schneller ist, als die Datenbank.
Das Problem an der Geschichte ist jedoch, die Daten im Cache und in der Datenbank synchron zu halten. Sprich, wenn Daten geändert werden, müssen diese sowohl in die Datenbank, als auch in den Cache geschrieben werden. Andernfalls gibt es keine Möglichkeit zu erkennen, dass die Daten im Cache veraltet sind. Und genau an dieser Stelle hakt es von Zeit zu Zeit. Da der Cache jedoch nach einer gewissen Zeit von sich aus alte Daten rauswirft, werden spätestens dann die aktuellsten Daten im Cache gespeichert (und dann auch angezeigt).
Es gibt so in etwa ein paar Dutzend Fälle, in denen es zu Problemen bei der Aktualisierung des Caches kommen kann. Einige sehr abstrakt und relativ unwahrscheinlich, andere ganz praktisch und ziemlich häufig. Die üblichen Verdächtigen haben wir inzwischen ganz gut im Griff und grade diese Woche wurde diesbezüglich wieder einiges an Code geschrieben. Für ein paar andere Fälle habe ich bereits einige Ideen in der Warteschlange, die bei Gelegenheit umgesetzt werden. Einiges davon ist aber ziemlich abgefahren und muss erstmal behutsam evaluiert werden.
Um das also mal zusammenzufassen: Wir haben diese Probleme auf dem Schirm. Da sie sich aber extrem schwer (bis garnicht) reproduzieren lassen, ist es ziemlich tricky, die Ursachen dafür zu finden. Aus diesem Grund arbeiten wir immer mal nebenbei einige der Problemfelder ab und hoffen, dass die Probleme dadurch mit der Zeit immer weniger werden.