Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Application_OnEnd & aspnet_wp

[es] :: .NET :: Application_OnEnd & aspnet_wp

[ Pregleda: 1702 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

vanhulio
student
Beograd

Član broj: 72088
Poruke: 40
*.telekom.yu.



Profil

icon Application_OnEnd & aspnet_wp04.04.2006. u 21:42 - pre 219 meseci
Imam jedno prosto pitanje. Kada se izvršava Application_OnEnd metod? :)

Naime, o čemu se radi.
Na shared hostingu, relativno često (par puta u toku dana, a nekad prođe više od jednog dana), worker process mi počisti aplikaciju. To pretpostavljam, jer mi isprazni Application state. (ako grešim neka me neko ispravi)

Ono što pokušavam jeste da pre nego što će počistiti, ja u OnEnd metod stavim da mi serilalizuje u file određeni objekat.
Međutim, to mi nikako ne polazi za rukom, kao da se event uopšte ne desi. (ovo pokušavam na lokalnoj mašini, gde sam postavio da se proces obnavlja na 10 sekundi).

Gde je problem, tj. da li može to na ovaj način?


Two items walk into a ToolBar.
The bartender says, “Can I get you a menu?”
“No thanks, we're looking for a little action.”
 
Odgovor na temu

VerbatimBOT
Aleksandar Dragosavac
Senior .NET Developer

Član broj: 84129
Poruke: 228
*.vdial.verat.net.



Profil

icon Re: Application_OnEnd & aspnet_wp05.04.2006. u 01:53 - pre 219 meseci
Hm... ako se ne varam (a ako se varam, ispraviće me neko), to je kao kad bi hteo da svaki put kada ugasiš računar, on startuje winamp.
Koliko ja shvatam, s obzirom da ti je aplikacija na drugoj (tudjoj) mašini, oni "nasilno" ubijaju tvoj Application objekat, tako da se ne može isvršiti onEnd metod.
Winners never quit, quitters never win.
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Application_OnEnd & aspnet_wp05.04.2006. u 12:04 - pre 219 meseci
Na stranu zasto Application OnEnd event ne radi, imas dva workaround-a:

1. Da ukines recikliranje procesa (http://www.elitesecurity.org/tema/123091)
2. Da koristis neki drugi session state sem "InProc"

Za obe ove opcije ti treba pomoc i odobrenje hostera, pa good luck sa tim.

E sad, zasto se OnEnd ne poziva. Sad jedno jednostavno pitanje, ako ti recikliras proces na 10 sekundi, kad stignes da ga pokrenes? Tj, dali si siguran da proces uopste radi? Nema procesa=nema OnEnd eventa.

Citat:
VerbatimBOT: Hm... ako se ne varam (a ako se varam, ispraviće me neko)


Hmm, moram da te ispravim (btw, ektremno je lako upaliti winamp dok se gasi kompjuter, samo sto ce se ili odmah izagsiti ili biti ubiven shutdownom).
Bas zato sto je ubijanje procesa agresivan proces, recycler to radi malo elegantnije i prvo pokusa da ga "ubije" regularno sto ce dovesti do paljenja OnEnd eventa.

Jedini razlog za koji ja znam da OnEnd ne pali je da anonymous user ne postoji/iskljucen je/account podesen u IISu za anonymous ne valja. Ako na tom hosting serveru mogu da ti pogledaju event log, u gornjem slucaju ce to biti alarmirano u application logu
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

vanhulio
student
Beograd

Član broj: 72088
Poruke: 40
*.207.eunet.yu.



Profil

icon Re: Application_OnEnd & aspnet_wp05.04.2006. u 13:01 - pre 219 meseci
Citat:
mmix: Na stranu zasto Application OnEnd event ne radi, imas dva workaround-a:

1. Da ukines recikliranje procesa (http://www.elitesecurity.org/tema/123091)
2. Da koristis neki drugi session state sem "InProc"


Ovdo nisam bas razumeo, za session, jer meni Session_OnEnd radi. Da li ima, i kakve veze to sa ApplicaionState-om?
edit: Mala ispravka, Session_OnEnd kako izgleda se ne poziva kod recycla, nisam te odmah razumeo sta si pricao.
Ali za Session mi i nije bitno da sacuvam stanje, tako da mi to nije problem.

Citat:

E sad, zasto se OnEnd ne poziva. Sad jedno jednostavno pitanje, ako ti recikliras proces na 10 sekundi, kad stignes da ga pokrenes? Tj, dali si siguran da proces uopste radi? Nema procesa=nema OnEnd eventa. :)


Da, uspem ja da pokrenem aplikaciju za to vreme, i vidim u trace-u da postoji Application["nesto"], ali nakon recycle-a file nije kreiran u direktorijumu. (povecao sam i na 15s da budem siguran :)

Citat:

Jedini razlog za koji ja znam da OnEnd ne pali je da anonymous user ne postoji/iskljucen je/account podesen u IISu za anonymous ne valja. Ako na tom hosting serveru mogu da ti pogledaju event log, u gornjem slucaju ce to biti alarmirano u application logu.

Gde se nalazi tacno log, da pogledam kod sebe u lokalu?

[Ovu poruku je menjao vanhulio dana 05.04.2006. u 14:31 GMT+1]
Two items walk into a ToolBar.
The bartender says, “Can I get you a menu?”
“No thanks, we're looking for a little action.”
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Application_OnEnd & aspnet_wp05.04.2006. u 13:55 - pre 219 meseci
Citat:
vanhulio: Ovdo nisam bas razumeo, za session, jer meni Session_OnEnd radi. Da li ima, i kakve veze to sa ApplicaionState-om?

Da, tema je za session state, ali je uputstvo za ukidanje recikliranja isto trebao sam biti malo precizniji sta da pogledas u temi... Mada ukidanje recikliranja, iako je opcija, nije bas preporucljivo. TO je jedini mehanizam koji spasava server od potrebe za periodinim rebootovima u slucaju kad web aplikacija ostavlja zive reference po application objektu bez
Citat:
vanhulio: Da, uspem ja da pokrenem aplikaciju za to vreme, i vidim u trace-u da postoji Application["nesto"], ali nakon recycle-a file nije kreiran u direktorijumu. (povecao sam i na 15s da budem siguran

Ok, a na osnovu cega znas da je proces uopste bio recikliran? Baci pogled u event log, recikliranje bi trebalo da ostavi entry.
Citat:
vanhulio: Gde se nalazi tacno log, da pogledam kod sebe u lokalu?

Link za Event log ti je na vise mesta. Direktno ides na Control Panel | Administrative tools pa Event viewer
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

vanhulio
student
Beograd

Član broj: 72088
Poruke: 40
*.233.eunet.yu.



Profil

icon Re: Application_OnEnd & aspnet_wp05.04.2006. u 14:52 - pre 219 meseci
Da li znam da li je pokrenuto recikliranje?! Pa ne znam :)

Kao sto sam rekao u prvom postu, sve je moja pretpostavka, jer nisam siguran sta se desava na tom shared hostingu,
da li dolazi do gasenja worker procesa i pokretanja novog (tu se gubi stanje za sve aplikacije, tako?)
ILI
ocisti samo moj aplikacioni domen?!


Ali ako postavim kod sebe u machine.config-u timeout="0:00:15" gde kaze:
"timeout="[Infinite | HH:MM:SS] - Total life of process, once expired process is shutdown and a new process is created"
Ja vidim u task manageru da se proces na svakih 15 sec menja novim aspnet_wp.exe procesom.
Bilo bi logicno da se ispali OnEnd event.


Ono sto sam primetio da nakon pozivanja HttpRuntime.UnloadAppDomain() iz aspx strane, za koji kaze:
"Terminates the current application. The application restarts the next time a request is received for it."
takodje se ne pozove Application_OnEnd().

p.s U event logu nista nije zapisao.

Two items walk into a ToolBar.
The bartender says, “Can I get you a menu?”
“No thanks, we're looking for a little action.”
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Application_OnEnd & aspnet_wp06.04.2006. u 13:23 - pre 219 meseci
Hmm, vazno pitanje, koji IIS je kod tebe a koji na hostingu? (win2000 i XP = IIS5, Windows 2003 = IIS6)
IIS5 i 6 (native) drugacije handluju recikliranje worker procesa. podesavanja u machine.config imaju uticaja samo na IIS5, dok se na IIS6 ova podesavanja obavljaju u samom IIS-u (web aplikcija mora da pripada nekom application pool-u koji je u stvari worker proces, svaki application pool ima svoja podesavanja).

I dalje mi je svejedno cudno da se ne izvrsava. Uradi sledece, podesi timeout na recimo 1min da das sebi vremena da obavis sta treba. Montiraj breakpoint na prvu liniju koda u OnEnd, bilduj aplikaciju i onda je pokreni direktno iz IE-a (ne pokreci je iz vs.net-a). Kad ti ucita stranicu, vrati se u vs.net i izaberi iz menija Debug|Attach to process. Na spisku lociraj worker process i zakaci se na njega. Ako je debuger pauzirao izvrsavanje procesa (zeleno "play" dugme je aktivno), pusti ga da tece dalje na to "play" dugme.
Sacekaj da istekne taj minut i vidi da li ce da stane na tvoj breakpoint. Ako recycler ubije proces a tvoj handler se ne izvrsi vs.net ce se svejedno otkaciti od procesa. Javi sta si uradio...


[Ovu poruku je menjao mmix dana 06.04.2006. u 14:24 GMT+1]
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

vanhulio
student
Beograd

Član broj: 72088
Poruke: 40
*.vdial.verat.net.



Profil

icon Re: Application_OnEnd & aspnet_wp06.04.2006. u 20:39 - pre 219 meseci
Kod mene ja IIS5, tamo je IIS6.

A za ovo drugo, nemam VS, nezgodna situacija.
Hvala ti na trudu, misilo sam da postoji neko logicno objasnjenje, sta da se radi.

Pogledacu jos malo po netu da nadjem nesto.

pozdrav.
Two items walk into a ToolBar.
The bartender says, “Can I get you a menu?”
“No thanks, we're looking for a little action.”
 
Odgovor na temu

[es] :: .NET :: Application_OnEnd & aspnet_wp

[ Pregleda: 1702 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.