Kacam.net

Fehlersuche

内存一周涨满一次,重启就好

内存一周涨满一次,靠每周三凌晨重启扛着,已经两个月了。

Vorlage kopieren, dann ein Modell wählen. Es spielt den Interviewer und fragt dich Szene für Szene ab, statt dir die Antwort hinzulegen.

Auf einem Telefon mit installierter App öffnet das System die App direkt. In WeChat lassen sich keine externen Apps öffnen — öffne es zuerst im Browser.

「重启就好」很容易让人直接归成「泄漏」,然后一头扎进「找哪个对象没释放」——而这一份的真相不在那个方向上。

内存一直涨至少是三种完全不同的东西,处理办法也完全不同。先分家,再往下走,顺序是固定的:堆内还是堆外 → 直方图 → 持有链。跳过前两步直接猜「是不是 ThreadLocal」,是这类问题上最常见的浪费。

现场里正好摆着两个教科书上的经典嫌疑人等你扑上去。

★★★★☆ · etwa 35 Min. · Geprüft wird: 先分三种、堆内还是堆外、直方图与持有链

Der Handgriff, den diese trainiert

Das Werkzeug beherrschen Hypothese bilden und prüfen

Schon gemacht?

Melde dich an, um festzuhalten, dass du diese Aufgabe geübt hast — beim nächsten Mal siehst du, wann das war.

Notizen von Leuten, die das gemacht haben

Noch hat niemand etwas geschrieben. Erzähl nach dem Durchlauf, was dabei herauskam — welche Szene dich ins Stocken brachte, welche Schlussfolgerung du danach geändert hast.

Anmelden, um eine Notiz zu schreiben.

So funktioniert es

Sie gibt dir die Lage (welcher Dienst, das Symptom, seit wann, wie weit es reicht) und schweigt dann. Du fragst, forderst Metriken, Logs, Mitschnitte an, stellst Hypothesen auf — sie antwortet nach einer Wahrheit, die du nicht sehen kannst.

**Sie darf von sich aus nicht sagen, wo du als Nächstes schauen sollst.** Fragst du nicht, sagt sie nichts — auch wenn du zehn Minuten im Kreis läufst. Das ist Absicht: im echten Leben steht niemand daneben und sagt „schau doch mal ins Flamegraph“. Fehlersuche *ist* die Fähigkeit, auf die richtige Frage zu kommen.

So fängst du an

  1. Eine auswählen, öffnen, den Prompt kopieren.
  2. In ein ganz neues, leeres Gespräch einfügen.
  3. Sie gibt die Lage und hält an — **jetzt bist du dran.**

Vier Zurufe, jederzeit möglich

  • 给个方向 eine Richtung, nicht die Antwort (wird mitgezählt)
  • 公布真相 die Wahrheit nennen und abschließen
  • 换一个 mit einem anderen Vorfall neu anfangen
  • 复盘 sofort abschließen und die Auswertungskarte ausgeben

Drei Fallen

  • Lies die Wahrheit am Ende nicht vorher — damit ist die Übung erledigt.
  • Fang nicht mit dem Raten der Ursache an. Kläre erst den Umfang (wie viel, welcher Teil, seit wann) — der Umfang sagt dir, ob es ein Code- oder ein Umgebungsproblem ist.
  • In jeder Lage stecken falsche Fährten: ein unbeteiligtes Release zur selben Zeit, Metriken, die Folge und nicht Ursache sind, der Lehrbuchverdächtige, der auf dich wartet. Die Auswertung sagt dir, wie viele Fragen du an jede verschwendet hast.

Fang mit dem P99 an, seine Diagnosekette ist die sauberste. Dann „nur ein Teil der Maschinen“ — die dort gelernte Regel ist die vielseitigste. Den sporadischen Timeout hebst du dir auf: die Antwort liegt außerhalb deines Systems. Der Report-Abgleich braucht überhaupt kein Systemwissen.