Diffrence Between Dedicated and Shared Server
Bir client database connection gerçekleştireceği zaman server tarafında çalışan process genel olarak 3 e ayrılır.
1) User Process: Bu process user applications çalıştırır.(SQLplus)
2) Server Process: User process isteklerini yönetir.(SQL sorgusunu çalıştırıp sonuç döndürme)
3) Background Process: Database çalışması için gerekli gerekli olan proces dir.
Database e gelen istekleri yönetmek için database iki farklı şekilde çalışır.
1)Dedicated Server
2)Shared Server
Dedicated Server Model: Client bir connection request gerçekleştirdiği zaman yeni bir server process ve session oluşturulur.Database server her bir server process için resource allocate eder.Ve kullanıcının isteklerini bu server process gerçekleştirir.Memory gereksinimi server ve session sayısı ile doğru orantılıdır.Oluşturulan session için gerekli alan PGA dan oluşturulur.Server process ve session terminate edildiği zaman resources release edilir.Bu yöntem performansın önemli olduğu durumlarda kullanılır.
Shared Server Model:Client bir connection isteği yolladığı zaman bu isteği dispatcher karşılar ve request kuyruğuna koyar.Bu requests uygun olan server process tarafından alınır ve clien isteklerini bu server process gerçekleştirir.Dispatcher client ile shared server process arasındaki iletişimin yönetimini sağlar.Burada her client için bir session vardır fakat her client için bir server process oluşturulmaz.Database yapılandırırken belirtilen miktarda server process oluşturulur ve bu oluşturulan server processs client isteklerini gerçekleştirir. Varolan session sonlandığı zaman bu session için oluşturulan resource bırakılır..Session için gerekli alan PGA dan sağlanır.Memory gereksinimi shared server sayısına ve session sayısına bağlıdır.Burada yine her kullanıcı için bir session vardır.Request queue sga içinde oluşturulur.Her dispatcher kendi request queue sahiptir.Available shared server buradan request alır istenilen iş yapıldıktan sonra sga da bulunan response queue koyar.Daha sonra dispatcher bu işlemin sonucunu user process gönderir.Shared server kullanımı server process sayısını memory kullanım miktarını azaltır.
Example of Memory usage for Dedicated and Shared Server:
Her bir session için gereken memory=400KB
Her bir server process için gereken memory=4MB
Shared servers=100
Client number=5000
Memory usage of Dedicated server:
memory usage:5000(400KB+4MB)=22GB
Memory usage of Shared server:
memory usage=100X4MB+5000x400KB=2.5GB
Hiç yorum yok:
Yorum Gönder