Autor Thema: Hoher Speicherverbrauch bei LotusScript-Agenten  (Gelesen 2965 mal)

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Hoher Speicherverbrauch bei LotusScript-Agenten
« am: 23.10.08 - 10:03:45 »
Hallo,

ich habe jetzt schon das zweite Mal das störende Phänomen, dass ein LotusScript Agent unnötig viel Speicher verbraucht und wenn dieser fertig mit der Verarbeitung ist, den Speicher auch nicht freigibt.

Beide Agenten verarbeiten viele Dokumente. Sie laufen in der Regel sehr lange, weil sie für die einzelnen Dokumente Ausgabe-Dateien erstellen.

Dass die den Speicher verbrauchen, stört mich nicht, aber dass der Speicher nach dem Lauf (10-30 Minuten) nicht wieder freigegeben wird, ist nicht schön.

Das Problem tritt sowohl lokal als auch bei einem periodischen Agentenlauf auf.

Kennt jemand das Problem?

Glombi

  • Gast
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #1 am: 23.10.08 - 10:36:00 »
Üblicherweise iteriert man so:

set dc = .... 'NotesDocumentCollection bauen...

set doc = dc.GetFirstDocument
do while not (doc is nothing)
....

set doc = dc.GetNextDocument(doc)
loop


Ich kann mich an einen Vortrag erinnern (ich glaube es war der von Alan Lepowski auf der ILUG2007), wo gesagt wurde, dass dieses evtl. zu einem Speicherproblem führen kann, da jeweils für jedes doc in der Schleife eine neue Instanz angelegt wird.

Also kannst Du mal folgendes machen:
dim doc as NotesDocument
dim nextdoc as NotesDocument

set dc = .... 'NotesDocumentCollection bauen...

set doc = dc.GetFirstDocument
do while not (doc is nothing)
set nextdoc = dc.GetNextDocument(doc)
....
Delete doc
set doc = nextdoc
loop


Mit dem Delete wird der Speicher sofort aufgeräumt.

Andreas
« Letzte Änderung: 23.10.08 - 10:39:46 von Glombi »

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #2 am: 23.10.08 - 10:46:06 »
Oh... Ich habe diverse Delete schon eingebaut. Klar! Aber DA drauf bin ich noch nicht gekommen.

Es würde aber passen. Ich probiere es aus und gebe das Ergebnis bekannt.

Sowas muss man ja wissen, dass der das Objekt nicht einfach wegwirft! Sowas!

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #3 am: 23.10.08 - 12:57:32 »
Hm, also in einem Test konnte ich das gut nachstellen, dass es dort ein Problem gibt, aber in meinem Agenten hilft das noch nicht vollständig.

Entweder habe ich noch etwas übersehen oder es liegt noch an etwas anderem. Der Tipp war auf jeden Fall schonmal goldwert. Danke!!

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #4 am: 23.10.08 - 17:07:12 »
Ich muss doch widersprechen.

Ich habe anfangs gedacht, dass ich damit was in den Griff bekomme. Aber das ist nicht das Problem. Ich habe das Ganze mal mit einem Test-Agenten nachgespielt. Hierbei wird doch kein Speicher wieder freigegeben bzw. wenn man kein Delete benutzt, wird auch die Instanz nicht weiter im Speicher vorgehalten.

Hat sonst noch jemand eine Idee?

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #5 am: 24.10.08 - 11:21:27 »
Hat sonst jemand eine Idee wie man memory leaks auf die Schliche kommen kann?

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #6 am: 28.10.08 - 13:11:44 »
So ich habe etwas neuer herausbekommen. Langsam glaube ich nicht, dass es an meinem Agenten liegt.

Der Server läuft mit einer sichtbaren Server-Konsole! Sobald ein Agent läuft. Schluckt die nserver.exe und namgr.exe immer mehr Speicher. Sobald ich die Konsolo minimiere, laufen diese beiden Prozesse mit geringerem Speicherverbrauch. Die passiert auch bei minimierter Konsole. Sobald ich diese anzeigen lasse und wieder minimieren, wird hier wieder am Prozess der Speicher freigegeben. Die Auslagerungsdatei bleibt allerdings sehr hoch.

Ist dieses Verhalten normal beim Server? Auf dem Server läuft ein Norton Antivirus, diverse Group-Server-Tasks. Fernzugriff erfolgt durch UltraVNC.

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #7 am: 28.10.08 - 13:20:37 »
Zitat
Auf dem Server läuft ein Norton Antivirus, diverse Group-Server-Tasks. Fernzugriff erfolgt durch UltraVNC.
IBM Support würde in so einem Fall schreiben: Deakltivieren Sie alle Produkte von Drittanwendern, um auszuschliessen, daß der Fehler durch diese Programme hervorgerufen wird.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #8 am: 28.10.08 - 13:29:06 »
Ein normales Verhalten der Domino Server Konsole ist das aber nicht?

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #9 am: 28.10.08 - 13:31:45 »
Ich habe das mal zu 4.x zeiten irgendwo gelesen, daß man zur Performancesteigerung die Console immer minimiert halten soll. ... Ob das heute noch gilt ...
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #10 am: 28.10.08 - 13:41:27 »
OK, danke. Die einzelnen anderen Programme werden wir hier nach und nach mal deaktivieren. Kann ich nur nicht einfach so machen!

Offline Ralf_M_Petter

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.879
  • Geschlecht: Männlich
  • Jeder ist seines eigenen Glückes Schmied
    • Ralf's Blog
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #11 am: 28.10.08 - 16:00:11 »
Wie misst du den Speicherverbrauch?

Meine Frage bezieht sich darauf, ob du überhaupt den richtigen Wert anschaust, der den speicherbedarf des Prozesses anzeigt.

Grüße

Ralf
Jede Menge Tipps und Tricks zu IT Themen findet Ihr auf meinem Blog  Everything about IT  Eine wahre Schatzkiste sind aber sicher die Beiträge zu meinem Lieblingsthema Tipps und Tricks zu IBM Notes/Domino Schaut doch einfach mal rein.

Offline oson00

  • Aktives Mitglied
  • ***
  • Beiträge: 240
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Hoher Speicherverbrauch bei LotusScript-Agenten
« Antwort #12 am: 29.10.08 - 09:36:59 »
Ich habe mir die Größe der Auslagerungsdatei angesehen, aber auch den Speicherverbrauch der einzelnen Tasks. Bei maximierter Server-Konsole steigt der Speicherverbrauch der Prozesse nserver.exe und namgr.exe immer weiter an. Ich schau mir das jeweils im Taskmanager an.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz