14. März 2017 15:19
Hallo zusammen,
wir haben NAV 2017 CU2.1 im Einsatz und auf einem unserer NSTs ein Memory Leak Problem. Um dieses Schritt zu Schritt zu finden, habe ich nur mal den NST gestartet ohne auch nur eine Session dagegen laufen zu lassen. Auf dem Server habe ich auch gegen die Standarddatenbank ein NST aufgesetzt.
NST gegen Livedatenbank -> hat nach 20 Minuten 1500 MB Arbeitsspeicher gezogen
NST gegen Standarddatenbank -> hat nach Stunden irgendwas zwischen 500 und 600 MB Arbeitsspeicher gezogen
Das scheint mir schon etwas merkwürdig. Weswegen ich geprüft habe welche Parameter im NST unterschiedlich sind und zwar diese hier:
MaxConcurrentCalls -> Standard NST: 1000 -> Problem NST: MaxValue
ClientServicesMaxConcurrentConnections -> Standard NST: 500 -> Problem NST: MaxValue
ClientServiceReconnectPeriod -> Standard NST: 00:10 -> Problem NST: 08:30
ClientServicesMaxUploadSize -> Standard NST: 100 -> Problem NST: 300
SQLCommandTimeout -> Standard NST: 00:30 -> Problem NST: 24:00
CloseInactiveSQLConnectionsGeneration -> Standard NST: 10 -> Problem NST: MaxValue
Hat jemand eine Idee welcher der Parameter den Unterschied macht und könnte mir vielleicht erklären warum das der Fall ist... DANKE!
Gruß
sas_fisch
14. März 2017 15:27
Hallo,
arbeitest du mit Jobqueues oder Webservices?
Gruß Fiddi
14. März 2017 15:32
Weder noch.
14. März 2017 15:55
Wenn du dann doch mal eine Session startest wieviele Einträge hat zu dem Zeitpunkt die Tabelle "Active Session" auf beiden NST?
Weil wenn gar nichts offen ist, nichtmal ein Rollencenter, dann liegt fiddi mit der Frage schon goldrichtig eigentlich.
EDIT: Was passiert auf dem SQL Server? Normalerweise gibt es regelmäßig Zugriffe auf $ndo$taskscheduling, Object Tracking und wahrscheinlich $ndo$cachesync.
14. März 2017 22:25
Hallo,
Ich vergaß noch den Webclient.
15. März 2017 10:13
Hi zusammen,
also ich habe keine Active Session auf dem Node laufen. Wenn ich einen Client verbinde, sehe ich auch nur eine einzige Session. Wir nutzen weder Jobqueues, Webservices oder den Webclient.
SilverX hat geschrieben:EDIT: Was passiert auf dem SQL Server? Normalerweise gibt es regelmäßig Zugriffe auf $ndo$taskscheduling, Object Tracking und wahrscheinlich $ndo$cachesync.
Kannst Du mir dabei helfen, wie ich das am besten nach schaue? Denn wir sprechen ja von meinem Livesystem, heißt es sind natürlich auf anderen NST auch User unterwegs. TaskScheduling sollte nicht passieren, da ich dies im NST deaktiviert habe.
Gruß
sas_fisch
16. März 2017 17:30
Hattet ihr vor einer Weile ein Update Projekt? Die Einstellungen des Problem NST sehen sehr nach Updateprojekt für Datenkonvertierung aus. Das erklärt zwar noch nicht warum der NST Speicher zieht ohne Session, ist aber vielleicht ein Indiz auf etwas anderes.
16. März 2017 19:05
Wenn es das echte Produktivsystem ist, dann ist das in der Tat schwierig. Es wird ja auch der Cache zwischen den NST synchronisiert, was, so nehme ich an, den Speicherverbrauch eh ansteigen lässt. Habt ihr denn während der Tests auch auf der Demo Datenbank, auf einem anderen NST gearbeitet?
17. März 2017 11:33
SilverX hat geschrieben:Es wird ja auch der Cache zwischen den NST synchronisiert, was, so nehme ich an, den Speicherverbrauch eh ansteigen lässt.
Ah das ist interessant, dass wusste ich gar nicht. Zwischen welchen NST? Nur die auf dem gleichen Server sind oder alle NST die in die gleiche Datenbank gehen? Kannst Du mir etwas mehr erklären, wie das funktioniert?
SilverX hat geschrieben:Habt ihr denn während der Tests auch auf der Demo Datenbank, auf einem anderen NST gearbeitet?
Nur kleiner Sachen, nichts wildes. Aber das könnte ich nochmal testen.
20. März 2017 13:50
Zumindest ohne Client ändert sich am Speicherverbrauch eines NST bei mir nichts. Deshalb ist wohl auch meine Vermutung falsch. Bei mir reduziert sich der Speicher sogar nach einiger Zeit, sobald ein Client verbunden ist.
12. April 2017 16:57
Der Schalter "CompileBusinessApplicationAtStartup" (ab NAV 2016) bewirkt scheinbar pauschalen extremen Speicherverbrauch durchs Kompilieren und Laden aller Objekte auch ohne Session, damit der erste User gleich richtig loslegen kann.
- Code:
<!--
Configures whether the server should compile and warm up the whole Business Application at startup.
This can improve the perceived startup performance on cold server.
-->
<add key="CompileBusinessApplicationAtStartup" value="true"/>
Siehe Kommentare hier:
https://blogs.msdn.microsoft.com/nav/2017/04/10/cumulative-update-05-for-microsoft-dynamics-nav-2017-has-been-released/
12. April 2017 17:16
Der Speicher wird aber rasch wieder freigegeben, spätestens wenn man ein bisschen was macht. Das ist kein leck sondern normales Verhalten. Erschreckend aber ok.
18. Mai 2017 11:03
Eventuell liegt es nicht am NST, sondern am Windows bzw. SQL-Server selber.
Hier sind Hinweise zu dortigen bekannten und gestopften Speicherlecks.
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.