ASP.NET Uygulama Mimarisi

ASP.NET, multi-tier (çok katmanlı) veri erişim modelini kullanır. Bu veri erişim modeli İstemci, İş ve veri katmanlarından oluşur.

İstemci Katmanı (Presentation Tier):

Bu katman, kullanıcı ile diğer katmanların iletişimini sağlar. Bu katmanda, kullanıcı ara yüzünü oluşturan bileşenler bulunur. Html ve Sunucu kontroller, Web Formlar ve kullanıcı tanımlı kontroller (User Controls) bu katman içerisinde yer alır.

İş katmanı (Business Logic Tier) :

Bu katman uygulama ile veritabanı arasında iletişimi sağlar. Bu katmanda iş servisleri ve kurallarını içeren bileşenler bulunur. XML Web servisleri, COM ve COM+ nesneleri bu katman içerisinde yer alır.

Veri Katmanı (Data Tier) :

Veri katmanıdır. Bu katmanda veriyi saklamak için gerekli araçlar bulunur. İlişkisel veritabanları, e-mail alanları, mesaj kuyrukları ve dizin servisleri bu katman içerisinde yer alır. Web uygulamalarda, ASP.NET ile veri kaynağına erişim için ADO.NET kullanılır.

Asp.Net Çalışma Modeli

ASP.NET, ASP ve diğer web platformlarına göre daha yüksek performans ile çalışır. ASP.NET bu performans artışını Visual Studio .NET ile gelen, .NET Framework ve CLR (Common Language Runtime) ile sağlar.

ASP.NET platformunu en verimli şekilde kullanmayı sağlayan CLR bileşenleri aşağıdaki gibidir.

  • Type Management
  • Memory Management
  • JIT Compilation
  • Exception Manager

Tür Yönetimi (Type Management)

Güvenli olmayan bilgilere ve başlatılmamış değişkenlere izin vermez Bu yönetim, ASP.NET’i ASP’den tamamen ayıran bir özelliktir.

JIT Derleme (JIT Compilation)

ASP.NET Web sayfaları, kullanılan dilin editöründe derlenerek, MSIL (Microsoft Intermediate Language) diline çevrilir. MSIL kodu çalışma zamanında, JIT ile “native code” adı verilen dile çevrilir.

Hafıza Yönetimi (Memory Management)

CLR ile hafıza yönetimi otomatik olarak işlenir. New anahtar sözcüğü ile oluşturulan nesneler için, CLR hafızada yer ayırır. Nesneler referanslarını kaybettikten sonra “Garbage Collection” mekanizması ile bellekten silinir.

Exception Yöneticisi (Exception Manager)

CLR, ASP.NET uygulamaları için yapısal hata yakalama altyapısı sunar. ASP.NET uygulamalarında Try...Catch...Finally blokları kullanılarak hata yakalama altyapısı kolayca devreye sokulur.

ASP.NET uygulamaların konfigürasyon ayarları, XML dosyalar içerisinde saklanır. Bu dosyalar kolayca okunur ve yazılabilir. Her web uygulamanın kendisine ait bir konfigürasyon dosyası vardır. ASP.NET uygulamaların konfigürasyon dosyaları web.config dir.

Sunucuya ait konfigürasyon ayarları ise machine.config içerisinde saklanır. Her web sunucusunda tek machine.config dosyası bulunur.

Visual Studio .NET, web uygulamalarının performansını arttırmak  ve güvenliğini sağlamak için pek çok servis sunar.

Etikeler