Har problem med att Application_OnStart i global.asa körs titt som tätt. Detta verkar hända när någon ny besökare besöker sidan. Har mailat webbhotellet och frågat om de kör iisreset eller något liknande men det gör de inte. Omstarter av IIS orsakas ofta av Worker process recycling om det är IIS 6, denna recycling kan sättas på många sätt. Kan sättas till fasta tider, totalt antal users, minnesutnyttjande, processorutnyttjande osv. Det är IIS 6 det gäller. Fick nyss ett svar från webbhotellet där de sa att de inte kör recycling eller ngt liknande. Ligger heller inte i en application pool. Mitt webbhotell har nu varit i kontakt med Microsoft och de har varit inne på servern. Citat från webbhotellet: Jag har ett liknande problem på det webbhotell där min hemsida ligger och det är att sessionsvariabler helt enkelt försvinner/nollas. Det är absolut inte bra då kunders inloggning och rättigheter finns lagrade i sessionsvariabler. För mig ser det helt slumpmässigt ut hur och när detta inträffar. Webbhotellet har inte lyckats lösa detta. problemet är av samma art som Andreas har. Min sajt är helt obrukbar utan sessions då det är ett community. Vi kanske ligger på samma webbhotell rent av? Eller så är det ett ganska spritt problem. Min sajt blir också obrukbar utan sessions så på något sätt måste det lösas. Alla webbar i IIS 6 ligger i application pools ,det finns inget annat sätt. Sedan kanske de inte har ngn Recycling påslaget. Grymt jobbigt problem eftersom sessioner är en sån grundläggande funktion som bara MÅSTE fungera. Har just gjort färdigt denna funktionen nu och det fungerar helt perfekt! Äntligen slut på alla ofrivilliga urloggningar! :D Detta ser inte ljust ut... :( Vilket webbhotell är det?IIS verkar starta om titt som tätt
global.asa ser ut såhär:
<code>
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart
application("startServer") = now()
End Sub
Sub Session_OnStart
Session.LCID = 1053
Server.ScriptTimeout = 60
Session.Timeout = 40
End Sub
Sub Session_OnEnd
End Sub
</SCRIPT>
</code>
Har kommenterar bort väldigt mycket men problemet uppstår även när global.asa ser ut som ovanstående.
Har lagt upp en temporär driftstörningsfelsida som inte innerhåller ngn ASP alls förutom att jag skriver ut Now() samt variabeln application("startServer").
Så vad kan det vara för ngt som orsaker alla dessa "omstarter"?Sv: IIS verkar starta om titt som tätt
din Website skulle kunna ligga en application pool där det finns en site som inte är så välskriven och käkar minne hela tiden...
Worker process recycling kan man logga : http://www.microsoft.com/resources/documentation/iis/6/all/proddocs/en-us/ca_recyclewplogging.mspx
Brjann Brekkan
Systems Engineer
MicrosoftSv: IIS verkar starta om titt som tätt
Så vad kan det vara som strular då?Sv: IIS verkar starta om titt som tätt
"Han har ändrat en sak och det är connection timeout, det var det enda han trodde som kunde påverka det här."
Men detta verkar inte ha löst problemet iaf. :(
Är det verkligen inte nån som sitter och trycker på en lösning?Sv: IIS verkar starta om titt som tätt
Sv: IIS verkar starta om titt som tätt
När en webbplats "startar om" sin process så nollas ju alla Session-/Application- objekten osv ....
Något för MS att kika lite mer och djupare på .... kanske fler som har dessa problem ...
cya,
/PatrikBSv: IIS verkar starta om titt som tätt
Hade tillgång till att testa samma global.asa och diverse asp-kod hos en annan kund (på samma server) och problemen dök även upp där. Så problemet verkar vara globalt över hela servern...Sv: IIS verkar starta om titt som tätt
Sv: IIS verkar starta om titt som tätt
jag kan inte säga vad det beror på att den startar om tyvärr, Inget vanligt problem iallafall.
Brjann Brekkan
System Engineer
MicrosoftSv: IIS verkar starta om titt som tätt
Jag tänkte göra en liten speciallösning på detta. Ja, egentligen ingen "lösning", men ett sätt att gå runt problemet så att man som användare inte märker att sessionen nollas.
Tänkte göra som så att när man loggar in och sätter ett värde på sessionsvariablen så genererar jag en MD5-hash samt sparar denna hash i en cookie på användarens dator. Dessutom sparar jag detta värde i en tabell i databasen tillsammans med det värde som sessionsvariabeln har samt tidpunkten för inloggningen. Om användaren rör sig mellan sidor som kräver inloggning och sessionsvariabeln visar sig vara tom så kollar jag om användaren har en cookie med en MD5-hash. Cookien får inte vara äldre än livslängden på en session, i mitt fall 20 minuter. Därefter kollar jag om motsvarande hash finns i en post i databasen. Samma krav ställs på den postens ålder förstås. Finns detta så hämtar jag ut det värde som sessionvariabeln hade vid inloggningen och sätter detta värde på sessionsvariabeln igen. Till sist uppdaterar jag cookien på användarens dator samt tidpunkten på aktuell post i databasen med nuvarande tidpunkt. Vid utloggning raderas förstås både cookien och posten i databasen.
På så sätt kan jag återuppliva en session utan att användaren märker av något.
Detta är det bästa jag kan komma på just nu.Sv: IIS verkar starta om titt som tätt
Sv: IIS verkar starta om titt som tätt
Jag skapar även ett egetdefinerat recordset i global.asa som jag använder på sidan för att veta vilka medlemmar som är online. Så det är inte bara borttappade sessioner det gäller för mig. Sen har jag inte lust med att jämföra en massa saker mot databasen vid varje sidanrop bara för att en sak, som normalt ska fungera, inte fungerar.
Fick nyss ett nytt svar från webbhotellet:
"En supporttekniker ska titta på det här närmare eftersom vi inte har nån annan kund som har detta problem så måste vi kolla dina sidor. Vi tror likaså några andra att du måste ändra din sessionkodning på annat sätt men hur är en bra fråga."
Jag har nämt för dem att min sajt (med exakt samma kod) fungerar helt utmärkt här hemma. Så det kan absolut inte vara fel på min sessionkodning. Sen kanske de andra kunderna (på den server jag ligger på) inte använder sessioner i samma utsträckning som jag gör och därför inte upptäckt felet och därmed inte rapporterat detta till webbhotellet. Sv: IIS verkar starta om titt som tätt
Jag har inte börjat använda global.asa till min site än så jag vet inte om jag kanske får samma problem när jag börjar göra det.
En sak som gör mitt problem lite skummare är att när sessionsvariablen plötsligt är tom så kan jag reloada sidan några gånger och då kan den komma tillbaka. Det finns ingen logik alls i det tycker jag.
En liten parantes, även om det inte hjälper dig; Den kod jag gjorde för att lösa MITT problem tittar bara i databasen om en sessionsvariabel som inte borde vara tom ändå ÄR det. Det enda som kollas vid VARJE sidanrop är just sessionsvariabeln.