Henüz Üye Degilmisin ? Üye Ol | Parolamı Unuttum
Paneli Kapat
SANALGUCLULER Hack ve Güvenlik Platformu  

ASP.NET Uygulamalarına Programatik Restart

Web uygulamaları adı üzerinde birer "uygulama" yani "application" dır. IIS üzerinde her bir web uygulaması için bir " Application " tanımlanır ve ancak bu şekilde uygulamalar tek başlarına çalışabilirler. Bazı durumlarda bu uygulamaları resetlemek gerekebilir. Örneğin sitenin ziyaretçilerinin geride bıraktıkları Session değişkenlerinin TimeOut süreleri beklenmeden yokedilmesi için veya .NET Garbage

AnaSayfa Kimler Online Bugünki Mesajlar Forumları Okundu Kabul Et
Go Back   SANALGUCLULER Hack ve Güvenlik Platformu > Web Programlama Dilleri > ASP-.NET

Yeni Konu aç  Cevapla
 
LinkBack Seçenekler Stil
Alt 15 Ocak 2012, 14:04   #1
Mareşal
Ceybi Nickli Üyenin Kullanıcı Resmi (Avatar)
Üyelik Tarihi: 12 Ocak 2012
Mesajlar: 789
Rep Puanı : 10
Rep Derecesi : Ceybi isimli üye Tecrübe puanını kapatmıştır.
Standart ASP.NET Uygulamalarına Programatik Restart

Web uygulamaları adı üzerinde birer "uygulama" yani "application" dır. IIS üzerinde her bir web uygulaması için bir "Application" tanımlanır ve ancak bu şekilde uygulamalar tek başlarına çalışabilirler. Bazı durumlarda bu uygulamaları resetlemek gerekebilir. Örneğin sitenin ziyaretçilerinin geride bıraktıkları Session değişkenlerinin TimeOut süreleri beklenmeden yokedilmesi için veya .NET Garbage Collector'ın bazı hatalar sonucu toplamalayı unuttuğu bellekteki objeleri yok etmek için hızlı bir restart en uygun çözümdür.
Bir web uygulamasına reset atmanın en bilinen yolu Web.Config dosyasında ufak bir değişiklik yapmak veya adını değiştirip tekrar geri almaktır. ASP.NET, söz konusu uygulama ile hayati ilişkisi olan dosyaları takip eder ve eğer herhangi bir değişiklik yapılmış ise uygulamayı yani application'ı baştan başlatır. Peki ya biz bunu programatik olarak yapmak istersek? Yani sayfamızda bir düğme bulunsun ve Web.Config vs ile uğraşmadan, FTP'den giriş yapmadan uygulamaya bu düğme aracılığı ile istediğimiz zaman restart atabilelim.
PHP- Kodu:
System.Web.HttpRuntime.UnloadAppDomain() 
İşte sihirli metod yukarıda duruyor. Bu metodu kla*** bir ASP.NET düğmesine koyduğunuzda uygulamanız düğmeye basıldığında restart atacaktır. Aslında komutun yaptığı şey var olan uygulamayı hafızadan kaldırmak. Peki nasıl tekrar yüklenecek? Unutmayın ki tüm ASP.NET web siteleri ve uygulamaları söz konusu web sitesinin herhangi bir sayfasına ilk gelen istekte hafızaya yüklenir. Yani uygulamamızın tekrar hafızaya yüklenmesi için tek yapmamız gereken herhangi bir sayfaya çağrı atmak. Aslında bu şartı da bir ASP.NET düğmesi kullanarak yerine getirmiş oluyoruz. Çünkü düğmeye tıklandığında uygulama hafızadan silinecek fakat sonrasında sayfa tekrar yüklenmek zorunda. Düğmeye bastıktan ve uygulama hafızadan silindikten sonra sayfa tekrar yüklenirken uygulamamız da baştan başlayarak hafızaya yüklenecek. Böylece uygulamamıza restart atmış oluyoruz.
Bu metodun tek güzel yanı işimizi programatik olarak yapabiliyor olmamız değil. Bu metod kullanılarak yapılan restart işlemleri Global.asax içerisinde yer alan application end gibi olayları da çalıştırıyor. Böylece tüm restart işlemlerini loglamanız mümkün. Kabaca değerlendirmek gerekirse en .NET dostu restart metodunu yazmış bulunuyoruz.
Ceybi isimli Üye şuanda  online konumundadır   Alıntı ile Cevapla

Sponsor Linkler (Lütfen Sitemize Destek Olmak İçin Günde Bir Kez Tıklayınız)
Cevapla

Paylaş

Etiketler
asp.net uygulamalarına, aspnet, programatik, programatik restart, restart, uygulamalarina

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 13:17.


"İnsanları da Kağıt Paralar Gibi Güneş'e Tutunuz, İçlerinde Atatürk Yoksa Sahtedirler ..."
Sitemiz bir forum sitesi olduğu için kullanıcılar paylaşımlarını önceden onay almadan anında siteye yazabilmektedir. Bu yazılardan dolayı doğabilecek her türlü sorumluluk yazan kullanıcılara aittir. Yinede sitemizde yasalara aykırı unsurlar bulursanız admin[at]sanalgucluler[dot]com iletisim adresine bildirebilirsiniz, şikayetiniz incelenip en kısa sürede gereken yapılır.
Alemin Kralı, Alexa, Altavista, Android, Android, Apple ios, Apple Iphone, ASP-.NET, Astroloji, Bada, Blackberry, Blackberry Os, C#, C/C++, Çin Malı Telefonlar, Counter Strike, CSS, Delphi, DMOZ, Eklentiler (Hack-Plugins), Ekonomi, Fatmagül’ün Suçu Ne?, Firar, Google Adsense, Google Adwords, Google Analytics, Google Pagerank, Google Translate, Güvenlik Programları, Hayat Devam Ediyor, HTC, HTML-XHTML, Java, JavaScript & AJAX, Kamera Şakaları, Karahan Online, Kaza Videoları, Knight OnLine, Komik Videolar, Kurtlar Vadisi Pusu, Kuzey Güney, Kültür Sanat, Linux, MAC-OS, Maemo, Magazin, Metin2, Mobil, Moderatör Başvuruları, Motorola, Muck, Muhteşem Yüzyıl, Nokia, Ogame, Palm Os, Pardus, PHP, Pis Yedili, Planet, Python, Sağlık, Samsung, Ses&Video Programları, Siemens, Silkroad Online, Sinema, Sonyericsson, Sorularınız ve Cevapları, Spor, Symbian, Sürücü&Driver, Tasarım Programları, Teknoloji, Travian, Tv Rehberi, Unix, vBulletin Temaları, Visual Basic, Windows, Windows Mobile, WolfTeam, World of Warcraft, WPF/WCF, XML/XSLT, Yahoo, Yalan Dünya, Yer Gök Aşk, İlginç Videolar, İnternet Programları, İstanbul Kıyamet Vakti, Öyle Bir Geçer Zamanki
I Love You Google

Search Engine Optimization by vBSEO 3.6.0