20 Temmuz 2007 Cuma

SUNUCU

Öncelikle Oracle ile ilgili iki kavramın iyi anlaşılması gerekir: veritabanı ve instance (örnek).
Veritabanı, işletim sistemi dosyalarının oluşturduğu fiziksel topluluğa denir. Instance (örnek) ise bir takım Oracle işleçlerinden (process) ve de bir tür bellek olan SGA ‘den (System Global Area) oluşur. Bir veritabanı birden çok instance tarafından açılabilir. Instance ‘ın açtığı veritabanı günden güne veya birkaç saat içinde değişebilir.

Oracle’a bir kullanıcının bağlanması iki türlü olabilir: atanmış sunucu (dedicated server) veya MTS (Multi-Threaded Server) (Çoklu iş parçacıklı sunucu). Atanmış sunucuda oturum (session) boyunca bir sunucu işleci (process), kullanıcı işlece atanır. Her bir oturum için, birebir eşleme şeklinde yeni bir atanmış sunucu oluşacaktır. Bu atanmış sunucu gönderilen SQL komutlarını işleyecektir.

MTS modunda ise Oracle, paylaşılmış sunuculardan (shared servers) oluşan bir havuz kullanır. Bunda kullanıcılar gruplar halinde sunucuları paylaşırlar, böylece ihiyaç duyulan sunucu sayısı belirgin oranda azalır.

MTS ‘de kullanıcı doğrudan sunucu ile bağlantı kuramaz, bunun yerine dağıtıcı (dispatcher) ile bağlantı kurar. Dağıtıcı kullanıcının isteğini SGA ‘deki bir istek kuyruğuna yerleştirir. Boştaki bir sunucu kuyruktan aldığı komutu işler ve sonucu yanıt kuyruğuna yerleştirir. Dağıtıcı, yanıtı kuyruktan alıp kullanıcıya gönderir.

Hiç yorum yok: