Toon posts:

[IIS4] mtx.exe en MTS packages

Pagina: 1
Acties:

Verwijderd

Topicstarter
We hebben hier een probleem met onze IIS4. Een van de mtx.exe processen verslindt op een gegeven moment zo'n 800 MB aan werkgeheugen en pakt af en toe zo'n 80% aan processortijd. Dit is na een uptime van 1 a 2 weken. Deze mtx.exe hoort waarschijnlijk bij de site van een van onze klanten die nogal veel bezocht wordt.

Nou ben ik aan het zoeken geweest hoe ik dit kan verhelpen en ik heb tot dusver het volgende gevonden:

Op het moment dat je in de IIS aanvinkt bij een site "Run in separate memory space (isolated process)" (tabblad "Home directory"), krijgt de site bij het eerstvolgende bezoek een eigen mtx.exe (te zien in de taskmanager).

Als je onderaan in de MMC kijkt bij Microsoft Transaction Server --> Computers --> My Computer --> Packages Installed dan zie je een nieuwe package met de naam IIS - {sitenaam/Root}.
Hier kan je instellen (rechtermuisklik op een package --> properties --> advanced) dat een package na x minuten aan inactiviteit uitgeschakeld moet worden ("shut down after being idle for x minutes").

Mijn vragen hierover zijn:
Klopt het nou dat als ik dat instel op bijvoorbeeld 30 minuten en er 's nachts een half uur geen bezoekers komen het mtx.exe process van de betreffende site uitgeschakeld wordt en er op het moment dat er weer een bezoeker komt het process weer aangemaakt wordt?

Heeft dit voor- of nadelen ten opzichte van performance van een site?

Als er ergens iets niet klopt in m'n verhaal dan hoor ik dat graag!

  • _Arthur
  • Registratie: Juli 2001
  • Laatst online: 10:30

_Arthur

blub

Wat je zegt klopt.

En zoals altijd zit er een addertje onder het gras ;)

De maar is : je geeft aan dat er gebruik gemaakt wordt van COM componenten (even krom gezegd (zelf gemaakte?) .dll's). Wanneer er code in deze componenten zitten niet die niet netjes calls naar bv een database releasen zal je com component altijd 'active' blijven en zal nooit timeouten.

Verder is het alleen een performance kwestie als je bv de timeout op 1-2 minuten zet. En je hebt elke 1-2 minuten 1 bezoeker, dan moet je server dus steeds de package opnieuw creeeren. Met een 30mins timeout zal het nagenoeg geen impact hebben.

Dat ie 800mb aan geheugen eet duidt 100% zeker op een memoryleak in het betreffende COM component, dus schop je vb/delphi programmeurs maar dat ze hun werk beter doen. (Even de aanname gemaakt dat het een zelf gemaakt COM component is).

Nog een tip, wanneer je de kans krijgt om naar win2k te migreren met 2, nee 3 handen aanpakken. Win2k en COM componenten is 100x robuuster dan NT 4.

Monitor je de server met SNMP? Zoja, hoe bouwt de memory usage zich op? Zo van, vanaf een reboot tot aan week 2 is liniair naar de 800mb usage, of is het spontaan van dag 13 op dag 14 van zeg 250mb naar 800mb?

Verwijderd

Topicstarter
_Arthur, is het niet zo dat er op een database connectie een time-out zit? Dan zouden er geen componenten "active" blijven die eigenlijk geen activiteit vertonen.

Dat even terzijde: Het gaat hier niet om eigen COM componenten maar om websites, die een eigen proces krijgen op het moment dat er een eerste bezoeker komt. Het hele zaakje is geprogrammeerd in ASP (VBScript) en communiceert met een SQL Server 7.0.
We hebben hier dus niet te maken met zelfgemaakte COM componenten. Of is dit een vergelijkbaar iets?

Verwijderd

Topicstarter
Goed... We hadden het maar weer teruggedraaid, want het bleek dus zo dat de mtx.exe processen gewoon bleven bestaan.. Vanmorgen gedaan.. Alles gaat goed... Krijgen we een kwartier geleden ineens een foutmelding bij al onze sites!

"The requested resource is in use"!

Toen heb ik maar weer aangezet bij elke site "Run in isolated memory space" en voila: Het hele zaakje doet het weer...

Weet iemand waar dit aan kan liggen?

  • _Arthur
  • Registratie: Juli 2001
  • Laatst online: 10:30

_Arthur

blub

IIS 4 is erg irritant. Zeker met geheugen beheer en dit soort rare 'fouten'.
Maar ik zelf verwacht dat het probleem bij de gemaakte .asp code ligt.

Probeer zoveel mogelijk het zaakje te monitoren, zoals ik al zei bv met SNMP. Hiermee kan je grafieken maken met hits/cachehits/memory usage etc van je IIS en je server.

Verder nog wat random standaard kreten:
- alle updates gedraait neem ik aan?
- wanneer is het probleem ontstaan?

Verder:
- restart je IIS elke nacht om 5 of 6 uur sochtends. Dan kan ie er weer fris tegen aan. Zie 'net stop "World Wide Web Publishing Service"' en 'net start "World Wide Web Publishing Service"'

Nog verder:
- zet een test server op lokaal en repliceer de data van je hosting machine en de config van je hosting machine en ga zoeken

Verwijderd

ik zou ook zeggen aspcode... ipv SNMP zou ik trouwens gewoon de performance monitor gebruiken... (let op grote logfiles!!!).

Verwijderd

Topicstarter
_Arthur schreef op 17 september 2002 @ 18:02:
-knip-

Verder nog wat random standaard kreten:
- alle updates gedraait neem ik aan?
- wanneer is het probleem ontstaan?

Verder:
- restart je IIS elke nacht om 5 of 6 uur sochtends. Dan kan ie er weer fris tegen aan. Zie 'net stop "World Wide Web Publishing Service"' en 'net start "World Wide Web Publishing Service"'

-knip-
- Uiteraard hebben we alle updates gedraaid... :)
- Het probleem is ontstaan op het moment dat een van onze klanten tv spotjes uit begon te zenden met reclame voor o.a. de site en dat zo'n 4 uur per dag. Door de grote hoeveelheden bezoekers zal het zaakje wel over de rooie gaan


p.s. De overstap naar Windows 2000 met IIS5 is in voorbereiding... Hopen dat we dan van het gezeik af zijn. Helaas duurt dat nog een week of vier.... :(

We plaatsen dan wel meteen een 2e processor bij en 1 Gig aan werkgeheugen... :)

  • _Arthur
  • Registratie: Juli 2001
  • Laatst online: 10:30

_Arthur

blub

Verwijderd schreef op 18 september 2002 @ 11:30:
[...]

- Het probleem is ontstaan op het moment dat een van onze klanten tv spotjes uit begon te zenden met reclame voor o.a. de site en dat zo'n 4 uur per dag. Door de grote hoeveelheden bezoekers zal het zaakje wel over de rooie gaan
Caching kan natuurlijk ook een item zijn. Zeker als er veel bezoekers komen kan er veel gecached worden, zeker bij een uitgebreide site.

Kijk eens in de properties van de betreffende site met veel bezoekers en dan naar 'homedirectory' dan naar 'configuration' en dan het (bij mij) 4de tabblad 'cache options'. Hier kan je het eea aan caching methode/waarden aanpassen.

Speel hier eens mee en zie of het je geheugen gebruik vermindert.
Een simpel urltje van MS : http://support.microsoft....cid=KB;EN-US;q189409&FR=0
p.s. De overstap naar Windows 2000 met IIS5 is in voorbereiding... Hopen dat we dan van het gezeik af zijn. Helaas duurt dat nog een week of vier.... :(
We plaatsen dan wel meteen een 2e processor bij en 1 Gig aan werkgeheugen... :)
Win2k is zowiezo een flinke stap. Van nt4+iis4 naar win2k+iis5 scheelt bergen en werkt een stuk relaxter voor de sysadmin :)

Echter wanneer het natuurlijk een caching item is, dan zal je ook op je win2k machine de caching moeten tunen.
Pagina: 1