İçindekilerGirişİndex
YukarıİlkÖnceki YokSonrakiSon
Geriİleri
Yazdır

Three-Tier Mimari Nedir?

THREE-TIER UYGULAMALAR

Bir three-tier uygulama, her biri bir ağın farklı bir yerine dağılmış, 3 ana parçadan oluşur. Bu parçalar:

Tipik bir three-tier uygulamada, uygulama kullanıcısının iş istasyonu; kullanıcıya arayüz sağlayan (GUI) programı, uygulamaya özel giriş formlarını ve etkileşimli pencereleri içerir. (Yerel veriler veya iş istasyonunun kullanıcısına özel veriler de yerel sabit diskte saklanır).

İş mantığı, bir yerel alan ağ sunucusu veya başka bir paylaşımlı bilgisayarda bulundurulur. İş mantığı, iş istasyonlarından gelen istemci istemlerine sunucu olarak karşılık verir. Hangi verilerin gerekli olduğuna (ve nerede bulunduğuna) karar verir ve bir mainframe de bulunan 3. katman programı ile (bu kez) istemci olarak ilişki kurar.

3. katman, veritabanını ve bu veritabanına okuma ve yazma erişimini yöneten programı içerir. Bir uygulamanın oluşumu daha karmaşık olmakla birlikte, bu 3 katmanlı görüş büyük ölçekli bir programdaki parçalar için uygun bir düşünce yapısı oluşturur.

Three-tier bir uygulama istemci-sunucu modelini kullanır. Her 3 katman, farklı programlama dilleri ile çalışan farklı takımlar tarafından paralel olarak geliştirilebilir. Bir katmanın programı, diğer katmanlar etkilenmeden değiştirilebilir veya taşınabilir. Böylece, bir kuruluş için yeni ihtiyaçlar doğduğunda değişiklik yapmak kolay olur. Varolan uygulamaların tamamı veya bazı kritik kısımları geçici veya sürekli olarak saklanabilir ve eklenen yeni bir katmanın içine katılabilir.

Katmanlarda sağlanan hizmetler

Bu mantıksal katmanlar Sunum, Uygulama ve Veri hizmetlerine ayrılmıştır.

Sunum Hizmetleri

Uygulamanın kullanıcıya veri sağlayan kısmına tekabül eder. Ek olarak, kullanıcının veri ile etkileşimini sağlayan yapıyı da sağlar. Kısaca, sunum hizmeti kullanıcı arayüzünü tanımlar ve onunla etkileşir. Verinin sunumu genelde bazı geçerlilik kurallarına sahip olmamalı.

İş Hizmetleri/Nesneleri

Uygulama hizmetlerinin bir kategorisidir. Bu hizmet, bir organizasyonlar işi işlevlerini ve gereklerini içerir. Bu kurallar, bir kuruluştaki günlük işlerin ortaya çıkma adımlarından türetilir. Kurallar gelen bilginin geçerli vir tip ve formatta olduğundan emin olmak için kullanıln geçerlilik kuralları veya bir işlemi tamamlamak için takip edilen uygun iş adımlarından emin olmak için kullanılan işlev kuralları olabilir.

Veri Hizmetleri

Konumundan bağımsız olarak veriye erişimi içerir.

"two-tier" ve "n-tier" mimarileri ile farklar

İstemci-Sunucu mimari terimi, özel bir amaç veya fonksiyon için istemci bir programın ayrı sunucu bir program ile (muhtemelen ayrı bir makinedeki) ilişki kurduğu ağ sisteminin genel tanımıdır. İstemci, sunucu tarafından sağlanan hizmeti talep eden durumundadır. Birinci kuşak sistemler 2 katmanlı mimarilerdir, ki istemciler kullanıcıya grafik tabanlı arayüzler sunarlar ve kullanıcının girişini yaptığı veri ve işlemleri farklı bir makinada çalışan veritabanı sunucularının taleplerini yerine getirmek için kullanırlar. Bu tip mimaride uygulama mantığı istemci uygulamasına bağımlıdır ve istemci-sunucu etkileşiminde arabuluculuk yapmak üzere "ağır" bir ağ işlemi gereklidir.

Yeni kuşak istemci-sunucu mimarisi yaklaşımında bu bir adım ileri götürülerek bir orta sıra daha eklenerek 3 katmanlı mimari elde edilir. Genelde, uygulama mantığının bölündüğü yerde, istemci-sunucu yapı N katmanlı mimari şeklinde görülebilir. Bu bizi daha hızlı ağ iletişimine, daha yüksek güvenilirliğe ve daha yüksek sistem performansına ulaştırır.

"Two-Tier" Mimari

"Two-Tier" yapının en genel gerçekleştirimi uygulama mantığını istemciye yerleştirip "thick" istemci- "thin" sunucu mimarisi yapmaktır. Bu şekilde veritabanı basitçe sorgu sonuçlarını raporlar. Tipik olarak bu, dinamik SQL aracılığı ile ODBC türü bir çağrı düzeyi arayüzü (call level interface) kullanılarak gerçekleştirilir. "Two-Tier" mimaride geçerli olabilecek bir başka yaklaşım da veritabanı sunucusunda saklanan yordamları çağıran "thin" istemci-"thick" sunucu yaklaşımıdır. Her 2 durumda da işlemleri yürütmek için SQL-Net gibi uzak veritabanı taşıma protokolleri (remote database transport protocols) kullanılır. Sorgu başına düşen ağ "ayakizi" (footprint) çok geniştir, böylece ağın etkili bant genişliği ve ağı etkili kullanabilen kullanıcı sayısı azaltılır. Sadece ağ işlemlerinin boyutu değil, sorgu işleme hızı da bu ağır iletişim dolayısıyla yavaşlamıştır. Bu mimariler kritik görevli uygulamalar için tercih edilmez.

"Two-Tier" gerçekleştirimini uygulayan uygulama araçlerı içinde PowerBuilder, Delphi, Visual Basic ve Uniface sayılabilir. Bunlar "thick" istemciler meydana getirirler. FileNet ve C-image gibi satıcı firmalar da böyle "thick" istemci "Two-Tier" mimarisini içlerine alırlar. "thick" sunucu yaklaşımında saklı yordamlar kullanmak performans elde etmek için daha etkilidir. Çünkü ağın ayakizi hala ağır olmasına rağmen, "thick" istemciden daha hafiftir. Başka bir deyişle, bu tip yordamlar tek bir satıcı firmanın yordamsal işlevselliğine dayandığı gibi özel alışkanlıkları ve kodlamayı da vurgular.

Three-Tier Mimari

Alternatif "N-Tier" istemci-sunucu mimarisinde ağ ayakizinde önemli bir indirgeme ve performansta artış muhtemeldir. Örneğin, 3 katmanlı bir yapı elde etmek için bir "thin" istemci ile bir "thin" sunucu arasına bir orta katman ilave edilebilir. Sunucu orta katman ile DLL, API veya RPC türü standart protokoller aracılığı ile ilişki kurar. Orta katman, istemci çağrılarını veritabanı sorgularına ve dönüşte veritabanındaki veriyi istemcinin kullanabileceği şekle dönüştürerek, uygulama mantığının çoğunu içerir. Orta katman veritabanı ile aynı host’a yerleştirilirse, gömülü arayüz aracılığı ile veritabanına sıkıca bağlı hale gelir. Bu da bizi çok iyi kotrol edilmiş ve çok yüksek performanslı etkileşime götürür. Böylece SQL-Net, ODBC veya diğer CLL'lerin ağı aşırı yüklemesinin önüne geçilmeye çalışılır. Ayrıca, orta katman işlem gücü yeteneği elde etmek üzere üçüncü bir host’a dağıtılabilir.

"N-Tier" Mimariler

Orta katman çeşitli hizmet tiplerine bağlantı sağladığında ve bu servisleri bütünleştirip istemci ile veya birbirleri ile birleştirdiğinde "Three-Tier" mimari "N-Tier" mimariye genişletilebilir. "N-Tier" bir sistem, uygulama mantığını çeşitli host’lar arasında paylaştırarak da oluşturulabilir. Böyle bir durumda dağılmış işlevselliğin içeriği tekrar kullanım ve güvenilirlik gibi önemli avantajlar sağlar.

İçindekilerGirişİndex
YukarıİlkÖnceki YokSonrakiSon
Geriİleri
Yazdır