|  | İstemci-Sunucu |  | 
|  08-21-2012 | #1 | 
| 
Prof. Dr. Sinsi
 |   İstemci-Sunucudüzenle-tarihMart 2006 İstemci/Sunucu, istemciyi (genellikle bir grafik kullanıcı arayüzü-GUI) sunucudan ayıran bir ağ mimarisidir  Her bir istemci yazılımı, sunucuya ya da uygulama sunucusuna isteklerini (request) gönderir  Bu fikrin pek çok çeşitli uygulaması olmasına karşın, en güzel örneği internet üzerindeki web sayfalarıdır  Mesela üniversitemizin web sayfasını incelediğinizi varsayalım  Bu durumda, bilgisayarınız ve web tarayıcınız istemci olarak adlandırılır  Üniversitemizin web sayfasını oluşturan gelişmiş bilgisayarlar, veritabanları ve uygulamalar da sunucu olarak adlandırılır  Web tarayıcınız, üniversitenin web sitesinden bir istekte bulunur ve üniversitenin sunucusu sizin istediğiniz bilgileri toplar ve onu bir web sitesi şekline getirerek sizin web tarayıcınıza geri yollar, siz de ekranınızda üniversitenin web sitesini görmüş olursunuz  Bir istemci/sunucu mimarisi, ölçeklenebilir bir mimari sunmayı amaçlar  Böylece ağdaki herbir bilgisayar bir istemci ya da sunucu rolünü üstlenir  Sunucu yazılımı genelde, fakat her zaman değil, bir iş yazılımı için adanmış güçlü bir bilgisayarda çalışır  İstemci yazılımı ise genelde sıradan bir PC veya işistasyonunda çalışır  İstemciler gerek duydukları verinin pek çoğunu ya da tamamını uygulama sunucusundan isterlerler  Mesela; ayar dosyaları, stok verileri, iş uygulama yazılımları vs  gibi  Sunucu`nun özellikleri:Pasif (köle)İstekleri beklerİstek olduğunda bilgiyi sunar ve cevap yollar İstemcinin özellikleri:Aktif (efendi)İstekleri gönderirCevap dönene kadar bekler Sunucular durumsuz (stateless) veya durumlu (stateful) olabilir  Durumsuz bir sunucu, istekler arasında bilgi tutmaz  Mesela statik HTML sayfalarını sunan bir HTTP sunucusu gibi  Fakat durumlu bir sunucu, kendisine gelen istekler arasında bilgi tutar  Bu bilgi küresel (global) veya oturum (session) bazlı olabilir  Örneğin Apache Tomcat sunucusu gibi  İstemci ve sunucu arasındaki ilişki genelde ardışık diyagramlar (sequence diagram) ile belirlenir ve bu diyagramlar UML standardına uygun yapılır  Bir diğer ağ mimarisi ise peer-to-peer yapılar olarak karşımıza çıkar  Burada her bir düğüm, hem istemci hem de sunucudur ve hepsi de aynı sorumluluğa sahiptirler  Hem istemci/sunucu mimarisi hem de peer-to-peer mimarisi günümüzde çok fazla kullanılmaktadır  Her ikisinin de avantaj ve dezavantajları vardır  Genel bir istemci/sunucu mimarisinde iki adet düğüm vardır ve bu yüzden iki-katmanlı mimari olarak adlandırılır  Bazı ağlarda üç düğümlü bir yapı olabilir  Mesela islemci, uygulama sunucusu ve veritabanı sunucusundan müteşekkil bir ağda üç adet düğüm vardır ve bu yapı üç-katmanlı mimari olarak adlandırılır  Genelde n-katmanlı ya da çok-katmanlı mimarilerde iş mantığının farklı fonksiyonları için her bir hizmetle sorumlu ayrı bir sunucu görevlendirilir  Çok-katmanlı mimarinin iki-katmanlı mimariye göre avantajı daha iyi yük dengeleme sunması ve daha çok ölçeklenebilir olmasıdır  Dezavantajları ise ağa daha fazla yük getirmesi ve programlama ve test aşamalarının daha zor gerçekleştirilmesidir  İstemci/sunucu mimarilerde adresleme çeşitli yöntemler ile gerçekleştirilir: Makine proses adreslemesi (machine process adressing): adresler şu şekilde bölümlenir: proses@makine  Yani 56@453 ifadesi, 453 nolu bilgisayardaki 56 nolu proses`i işaret eder  İsim sunucusu (name server): İlgili alandaki (domain) sunucuların isimlerini ve adreslerini indeksler  Hedefbulma paketleri (Localization packets): Bir dağıtık sistemteki tüm bilgisayarlara gönderilen broadcast mesajlarıyla hedef bilgisayarların adreslerinin öğrenilmesidir  Tüccar (trader): Bir dağıtık sistemdeki hizmetleri indeksleyen bir sistemdir  Bu makale, online kullanıcı topluluğu tarafından oluşturulan ve düzenlenen özgür ansiklopedi projesi Wikipedia'nın Türkçe versiyonu Vikipedi'deki İstemci-sunucu maddesinden kopyalanmıştır  Bu makale, GNU Özgür Belgeleme Lisansı ilkeleri kapsamında özgürce kullanılabilir  | 
|   | 
|  | 
|  |