Hallo Fedinauten hier auf anonsys.net,
seit dem letzten Wochenende hatte unsere Friendica-Instanz immer wieder Probleme mit der Erreichbarkeit. Genauer gesagt kam es zu Timeouts, sowohl beim Aufruf der Weboberfläche als auch bei der Nutzung von Apps. Zunächst hatte ich die üblichen Verdächtigen wie die Datenbank, PHP-FPM oder Redis im Verdacht. Die Ursache lag allerdings ganz woanders.
Beim Durchforsten der Apache-Logdateien ist mir der User-Agent YisouSpider aufgefallen, der offenbar sehr häufig auf unsere Instanz zugegriffen hat. Da mir das etwas spanisch vorkam, habe ich die Analyse in diese Richtung vertieft. Die Ergebnisse haben mich angesichts der Zahlen und der möglichen Auswirkungen durchaus überrascht.
So wurde beispielsweise gestern zu einem bestimmten Zeitpunkt eine außergewöhnlich hohe Anfragespitze dieses User-Agents festgestellt. Innerhalb von nur zwei Minuten wurden 5.352 Anfragen von 1.253 unterschiedlichen IP-Adressen protokolliert. Das entsprach rund 97 % aller HTTP-Anfragen in diesem Zeitraum. Die Anfragen betrafen unterschiedliche Ressourcen und wurden zunächst mit HTTP 200 beantwortet. Zeitlich fielen sie mit den Erreichbarkeitsproblemen von anonsys.net zusammen.
Ein Vergleich der Zeiträume hat gezeigt, dass dieser Spider seit dem letzten Wochenende stündlich, teilweise sogar mehrfach pro Stunde, mit einer derart hohen Anzahl an Anfragen auf anonsys.net zugegriffen hat. Dies hat zu einer wiederkehrenden Überlastung des Systems geführt.
Nach der Aktivierung einer Apache-Sperre gestern um 10:48 Uhr wurde der User-Agent bei einem lokalen Test mit HTTP 403 abgewiesen. Die anschließende Überwachung der Logdateien zeigt, dass dieser Spider seitdem keine erfolgreichen Zugriffe mehr auf unsere Instanz verzeichnet hat. Reguläre Zugriffe funktionierten weiterhin. Seit dieser Maßnahme wurden keine weiteren Ausfälle oder Timeouts festgestellt.
Die Ergebnisse zeigen, dass die ungewöhnlich hohe Anzahl an Crawler-Anfragen die Überlastung verursacht hat. Damit hatte der Spider offenbar direkten Einfluss auf die Erreichbarkeit unserer Instanz und die Abarbeitung der Hintergrundprozesse (Worker).
Der Spider wurde also gestern am späten Vormittag gezielt blockiert. Seitdem sind keine weiteren Timeouts aufgetreten, und auch das Monitoring zeigt wieder einen normalen Betrieb an.
Allerdings hat die Überlastung auch die Kommunikation mit anderen Instanzen beeinträchtigt. Nachdem anonsys.net wieder normal lief, hatte sich in der Worker-Warteschlange ein Rückstau von über 90.000 Jobs angesammelt. Davon konnten inzwischen bereits einige tausen Jobs abgearbeitet werden, so das "nur" noch ca 36.000 Jobs offen sind die noch zum abarbeiten sind.
Falls ihr also Beiträge erstellt habt, die noch nicht ausgeliefert wurden, oder euch in eurer Timeline Beiträge angezeigt werden, die schon etwas älter sind, liegt das vermutlich an diesem Rückstau. Die Worker-Warteschlange wird weiterhin kontinuierlich abgearbeitet. Wir brauchen also noch etwas Geduld, bis sich alles wieder normalisiert hat.
Ich werde unsere Instanz weiterhin im Blick behalten. Bitte entschuldigt diese Unannehmlichkeiten.
P. S.: Es lag übrigens nicht an der gestern bekannt gewordenen php2Shel-Sicherheitslücke. 😉
#anonsys.net #YisouSpider #Crawler