Autor Thema: Agents laufen nicht parallel  (Gelesen 1938 mal)

Offline mind1

  • Junior Mitglied
  • **
  • Beiträge: 93
Agents laufen nicht parallel
« 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
« Letzte Änderung: 08.10.10 - 10:23:40 von mind1 »

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Agents laufen nicht parallel
« Antwort #1 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

Offline mind1

  • Junior Mitglied
  • **
  • Beiträge: 93
Re: Agents laufen nicht parallel
« Antwort #2 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
« Letzte Änderung: 08.10.10 - 10:29:28 von mind1 »

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Agents laufen nicht parallel
« Antwort #3 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.

Offline mind1

  • Junior Mitglied
  • **
  • Beiträge: 93
Re: Agents laufen nicht parallel
« Antwort #4 am: 08.10.10 - 11:30:06 »
Hallo Peter,

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

Gruß, mind1

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz