![JRun konfigurieren](https://rvso.com/image/515036/JRun%20konfigurieren.png)
Wir verwenden JRun 4 und es kommt häufig zu Abstürzen. Ich versuche herauszufinden, woher die Probleme kommen, und habe die Datei jrun.xml geändert, um die Protokollierung von Metriken zu aktivieren.
Das ist, was ich sehe …
01/06 15:07:27 metrics Web threads (busy/total/delayed): 2/100/0 Sessions: 0 Total Memory=70720 Free=7464
01/06 15:08:27 metrics Web threads (busy/total/delayed): 1/100/0 Sessions: 0 Total Memory=66944 Free=9199
01/06 15:09:27 metrics Web threads (busy/total/delayed): 3/100/0 Sessions: 0 Total Memory=67456 Free=9644
01/06 15:10:27 metrics Web threads (busy/total/delayed): 3/100/0 Sessions: 0 Total Memory=63360 Free=8368
In dem Buch, das ich gelesen habe (Adobe Coldfusion Anthology, Apress), wird vorgeschlagen, dass die Zahl „busy“ der freie Speicher in MB ist. In der Adobe-Dokumentation heißt es „Derzeit ausgeführte Threads“. Was ist richtig?
Und was bedeutet das alles?bedeuten?
Wenn ich es richtig lese, habe ich insgesamt 100 Threads und 3 davon sind beschäftigt. Was machen also die anderen 97 Threads, wenn sie weder beschäftigt noch verzögert sind?
Antwort1
Ich würde ein Tool wie FusionReactor oder SeeFusion zum Debuggen von ColdFusion-Stabilitätsproblemen empfehlen. Meiner Erfahrung nach hängen Abstürze mit Problemen bei der Speicherzuweisung zusammen (zu wenig, zu viel, Garbage Collector-Einstellungen usw.). Es hängt auch davon ab, was Ihre Anwendung tut und wie viele gleichzeitige Threads Sie für die Ausführung von ColdFusion eingestellt haben. Die oben genannten Tools geben Ihnen viel mehr visuelle Einblicke in den Server in Echtzeit, sodass Sie den Problemen auf die Spur kommen können.
Antwort2
Der Wert für „Beschäftigt/Gesamt/Verzögert“ des Threads ist die Anzahl der Threads, die derzeit von Jrun verarbeitet werden.
„Busy“ ist in Bearbeitung und wird gerade ausgeführt. „Delayed“ ist ein Thread, der in die Thread-Warteschlange ausgelagert wurde und derzeit auf die Ausführung wartet (normalerweise, weil kein aktiver Thread verfügbar war). Er bleibt dort, bis ein aktiver Thread frei wird oder bis er den in der Konfiguration festgelegten Timeout-Wert erreicht.
Antwort3
Ich kannte das Buch „Adobe Coldfusion Anthology“ nicht, aber die Administrationsdokumentation von Jrun (auf der CD oder im Internet verfügbar) war in den Angaben recht eindeutig.
Ich empfehle Ihnen, auch JDBC-Zähler einzuschließen, sie sind sehr nützlich.
Das Letzte ist, den Speicher zu kennen, nicht nur den Gesamtspeicher, sondern auch die verschiedenen Typen, Grenzen der Architektur und so weiter …
Einige Messwerte zur CPU, zu Seiten/s und Ähnlichem aus dem Ressourcenmonitor unter Windows helfen oft weiter.
Wir haben jrun4 etwa 5 Jahre lang verwendet und hatten jede Menge Probleme, hauptsächlich im Entwicklungsbereich und nicht im System, manchmal war es unser Fehler.
Das Letzte, was ich Ihnen empfehle, ist, dass jrun4 „Cluster“-Fähigkeit hat. Wenn Sie einen Engpass feststellen, können Sie immer einen Front-IIS und 2 oder 3 Jrun4 im Backend einsetzen. Ist ziemlich effektiv.
Ich hoffe es hilft.