Skip to main content

Dauer von Arbeitsabläufen, mal schnell, mal ewig

Comments

7 comments

  • Zendesk API User
    Author: aVogt - 7/22/2015 12:54

    Hallo Marian,

    1. FirstSpirit läuft auf einem Virtualem Server

    2. Es werden bei dem Arebitsablauf immer medien kopiert.

    3. Das sollten 10 GB sein (wrapper.java.maxmemory=10240), 7 Projekte

    Projektname Festplattenspeicher
    gaf 461,22 MB
    Intranet 3,709 GB
    sab.sachsen 1,009 GB
    sfo 26,875 GB
    sn-cz 43,386 MB
    sn-pl 807,062 MB
    ziel3-cil3 659,367 MB

    Das betreffende Projekt, mit den unterschiedlichen zeiten ist auch das größte (wir haben nur in einem weiteren Projekt Arbeitsabläufe und da ist es noch nicht zu dem problem gekommen)

    In dem großen Projekt gibt es 22.414 Medien, davon 43 Bilder, in 338 Ordnern

    4.Ist das nicht auch das, was im Monitoring zu sehen ist?

    Code Cache


    NON_HEAP 128 MB 48,963 MB 128 MB 128 MB
    Par Eden Space


    HEAP 1,333 GB 348,101 MB 1,333 GB 1,333 GB
    Par Survivor Space


    HEAP 1,333 GB 50,318 MB 1,333 GB 1,333 GB
    CMS Old Gen


    HEAP 6 GB 2,851 GB 6 GB 6 GB
    CMS Perm Gen


    NON_HEAP 512 MB 121,743 MB 512 MB 512 MB
    Total


    TOTAL 9,292 GB 3,407 GB 9,292 GB 9,292 GB

    edit:

    Ich verwende doch schon einen StringBuilder ...

    Grüße

    Andreas

    0
  • Zendesk API User
    Author: thmarx - 7/23/2015 8:46

    Hallo Andreas,

    bei virtuellen Servern hast du ja immer das Problem, dass du dir die Resourcen mit anderen virtuellen Servern teils. Es könnte durchaus sein, dass gerade auf einem oder mehreren anderer Server irgendetwas läuft, was deinen Server beeinträchtigt.

    Du könntest auch mal mit vmstat prüfen, ob dein System schon am swappen ist, dass könnte ebenfalls ein Grund für diese unterschiedlichen Zeiten sein.

    Viele Grüße

    thorsten

    0
  • Zendesk API User
    Author: aVogt - 8/5/2015 8:47

    Hallo Thorsten,

    unsere Systemer meinen, dass der virtuelleServer 4CPU und 12GB Arbeitsspoeicher zugesichert hat und diese nichtmit anderen teilen muss.

    Wegen den vmstat habe ich leider keine rechte und unsere Systemer keine Zeit ...

    Was mich nur wundert: Die einzelnen WF-Schritte (4 Stück) laufen annähernd gleichlang. Allerdings zwischen den einzelnen Übergängen liegen mal 100ms und mal 3Sec (bei 3 Statusübergängen sind das schon mal 9 Sekunden).

    Mir ist schon klar, dass eine Analsys da sehr schwer ist, gibt ja noch das FileSystem, die Datenbank ... aber alles immer ständig überwachen ist auch sher aufwendig und da ich es nicht unter Kontrolle habe, bin ich immer auf andere angewiesen.

    Grüße

    Andreas

    0
  • Zendesk API User
    Author: aVogt - 8/5/2015 11:37

    Gibt es event. Performance Unterschiede, wenn der gesamte Code in dem Workflowscript steht, oder wenn Teile davon (z.B. Änderungen/Löschen an dem Datensatz; Verschieben/Löschen von Medien) in ein eigenes Modul ausgelagert werden (als Klasse/Methode) und nicht als Executable?

    0
  • Zendesk API User
    Author: bIT_sosswald - 8/7/2015 8:13

    Hallo Andreas,

    ohne jetzt all deinen Code zu kennen, oder die Logs etc. analysiert zu haben, gebe ich trotzdem mal eine Antwort auf deine letzte Frage.

    Wenn das Workflowskript von einem User im lokalen Client ausgeführt wird, dann läuft dies meines Wissens nach auch auf dem Client und damit auf der lokalen Maschine des Users. D.h. du hast evtl. Netzwerklatenzen beim Übertragen der Objekte vom Server zum Client und zurück, du hast keinen Einfluss ob das Skript auf einem alten Pentium2 oder einem neuen I7 läuft, du hast keinen Einfluss darauf was der User auf seinem CLient noch so alles macht, usw.

    (Skripte und Publik-Komponenten, werden meines Wissens nach dort ausgeführt wo sie aufgerufen werden.)

    Wenn du die Logik in ein eigenes Modul (Service) auslagerst, läuft es meines Wissens auf dem Server und du hast damit deutlich mehr Kontrolle über die Hardware, zusätzlich fallen Netzweklatenzen weg, etc.

    Ich persönlich versuche möglichst viel aus auf den Server auszulagern und möglichst wenig im Client laufen zu lassen.

    Eine einfache Public-Komponente reicht dazu allerdings nicht aus. Wenn diese aus dem Client aufgerufen wird, so wird sie auch auf dem Client ausgeführt. Es braucht also einen Service um dies zu erreichen.

    Ich verwende dann meistens ein Executable (welches noch auf dem Client ausgeführt wird) in dem ich mir dann den Service hole und anstoße, so dass die eigenltiche Arbeit auf dem Server gemacht wird.

    Meiner Meinung nach kann es also durchaus einen Unterschied machen ob der gesamte Code im Workflowskript (Client) ausgeführt wird oder in einem Service (Server)

    Grüße

    Sandro

    0
  • Zendesk API User
    Author: MichaelaReydt - 8/25/2015 9:07

    Hallo Andreas,

    ist dieses Posting noch aktuell? Benötigst du noch weitere Hilfe oder haben dir die gegebenen Antworten bereits geholfen? In diesem Fall wäre es super, wenn du die "richtige Antwort" entsprechend markierst.

    Solltest du zwischenzeitlich eine eigene Lösung gefunden haben, wäre es toll, wenn du sie hier bereitstellst.

    Viele Grüße

    Michaela

    0
  • Zendesk API User
    Author: aVogt - 9/2/2015 8:42

    Der Post von Sandro lohnt sich sicher verfolgt zu werden.

    Dazu werde ich aber vorerst leider nicht kommen (habe bisher mit noch keinen Services gearbeitet).

    Ich werde es wohl intern so kommunizieren, dass an vielen Stellen "geschraubt" werden könnte, um die Arbeitsabläufe zu optimieren. Hardwareseitig ist das natülich schwerer durchzusetzen und ob es wirlich am Netz und der Datenbank liegt, müsste  auch erst bewiesen werden, was sicher nicht so einfach ist.

    0

Please sign in to leave a comment.