Das Notes Forum

Domino 9 und frühere Versionen => ND8: Administration & Userprobleme => Thema gestartet von: mind1 am 06.10.10 - 17:34:35

Titel: Agents laufen nicht parallel
Beitrag von: mind1 am 06.10.10 - 17:34:35
Hallo Forum,

ich habe diverse Agents auf einem Server laufen, die sich nicht gegenseitig "behaken" und völlig unabhängig voneinander sind. Deshalb möchte ich, dass die geschedulten Agents in zwei Instanzen parallel laufen. Von der rechenleistung her ist das gar kein Problem.

Im AgentManager (server doc im DD) habe ich schon "Max concurrent agents" auf 2 (daytime) gestellt. Und es sind über den Administrator-Client auch zwei Executive in den Server-Tasks zu sehen. Es laufen auch einige Agenten parallel - aber nicht alle. Es scheint so, als ob zwei Agenten aus derselben Datenbank nicht zusammen wollen. Ist das so und kann ich da irgendwas noch beeinflussen?

Vielen Dank!

mind1
Titel: Re: Agents laufen nicht parallel
Beitrag von: koehlerbv am 06.10.10 - 17:49:33
Nein, Bernd, das ist wirklich nicht möglich. Stell Dir einfach mal vor, was man da programmieren und was daraus folgen könnte.

Dir bleibt es natürlich unbenommen, Agenten aus einer anderen DB heraus laufen zu lassen, die dann aber doch das gleiche tun.

Bernhard
Titel: Re: Agents laufen nicht parallel
Beitrag von: mind1 am 08.10.10 - 10:24:44
Hallo Bernhard,

vielen Dank, ich habe schon an mir gezweifelt... Wenn das so ist, kann ich mich drauf einstellen.

Allerdings ist es bei mir so, dass diese Agenten sowieso mit mehreren Datenbanken arbeiten. Eine Vermischung der Auswirkungen habe ich bereits beim Entwickeln bedacht und ausgeschlossen. Es ist nur ärgerlich, weil ich aus Gründen der Übersicht angefangen hatte, meine Agenten in einer DB zu sammeln.

Gruss, mind1
Titel: Re: Agents laufen nicht parallel
Beitrag von: Peter Klett am 08.10.10 - 11:07:03
Gegen die Sammlung der Agenten in einer DB spricht auch nichts (ganz im Gegenteil).

Dann baust Du Dir eine Agenten-Start-Datenbank, in der Du periodische Agenten hast, die die Agenten in der Agenten-Sammel-DB über agent.run aufrufen (idealerweise über Einstellungsdokumente einstellbar). Für jede Executive installierst Du dann eine dieser Datenbanken und definierst die Agenten, die jeweils aufgerufen werden sollen.

Beim Aktivieren der Agenten in den Agenten-Start-Datenbanken musst Du aber beachten, dass alle Agenten, also der aufrufende und die aufgerufenen vom gleichen User möglichst zeitgleich signiert sind. Ich löse das damit, dass ich die aufgerufenen Agenten auf periodisch nie einstelle und dann mit einer Schaltfläche erst den aufrufenden Agenten aktiviere und danach alle aufgerufenen Agenten deaktiviere, dann sind alle Agenten gleichzeitig vom gleichen User unterzeichnet.

Noch eine Fallgrube, in die Du fallen könntest, ist session.CurrentDatabase in den aufgerufenen Agenten, denn session.CurrentDatabase ist bei dieser Konstruktion die Agenten-Start-Datenbank. Da sollte generell agent.Parent verwendet werden.
Titel: Re: Agents laufen nicht parallel
Beitrag von: mind1 am 08.10.10 - 11:30:06
Hallo Peter,

vielen Dank für den Tipp! Klingt sehr interessant!

Gruß, mind1