1 <?xml version='1.0' encoding='UTF-8' ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
4 <!-- English Revision: 1174747 -->
5 <!-- =====================================================
6 Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7 Reviewed by: Orhan Berent <berent belgeler.org>
8 ========================================================== -->
11 Licensed to the Apache Software Foundation (ASF) under one or more
12 contributor license agreements. See the NOTICE file distributed with
13 this work for additional information regarding copyright ownership.
14 The ASF licenses this file to You under the Apache License, Version 2.0
15 (the "License"); you may not use this file except in compliance with
16 the License. You may obtain a copy of the License at
18 http://www.apache.org/licenses/LICENSE-2.0
20 Unless required by applicable law or agreed to in writing, software
21 distributed under the License is distributed on an "AS IS" BASIS,
22 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23 See the License for the specific language governing permissions and
24 limitations under the License.
27 <manualpage metafile="mpm.xml.meta">
29 <title>Çok Süreçlilik Modülleri (MPM’ler)</title>
32 <p>Bu belgede Çok Süreçlilik Modülü denince ne anlaşıldığı ve bunların
33 Apache HTTP Sunucusu tarafından nasıl kullanıldıkları açıklanmıştır.</p>
36 <section id="introduction"><title>Giriş</title>
38 <p>Apache HTTP Sunucusu çok çeşitli platformlar üstünde farklı ortamlarda
39 çalışabilen güçlü ve esnek bir HTTP sunucusu olarak tasarlanmıştır.
40 Farklı platformlar ve farklı ortamlar çoğunlukla farklı özellikler veya
41 aynı özelliğin en yüksek verimlilikle gerçeklenmesi için farklı yöntemler
42 gerektirir. Apache httpd, geniş ortam çeşitliliğini daima modüler
43 tasarımı sayesinde uzlaştırmıştır. Bu tasarım, site yöneticilerine,
44 sunucularında bulunmasını istedikleri özellikleri derleme sırasında veya
45 çalışma anında gerekli modülleri yüklemek suretiyle seçebilme imkanı
48 <p>Apache HTTP Sunucusu 2.0, bu modüler tasarımı sunucunun en temel
49 işlevlerine kadar indirmiştir. Sunucu, Çok Süreçlilik Modülleri adı
50 verilen ve makine üzerindeki ağ portlarının bağlanmasından, isteklerin
51 kabul edilmesinden ve bu istekleri yanıtlayacak çocuklara dağıtmaktan
52 sorumlu olan modüllerin seçimine imkan verecek bir yapılanma ile
55 <p>Sunucunun modüler tasarımının bu seviyede genişletilmesi iki önemli
59 <li>Apache httpd geniş çeşitlilikteki işletim sistemlerini daha temiz ve
60 daha verimli bir şekilde destekleyebilmektedir. Özellikle,
61 <module>mpm_winnt</module> modülü, Apache httpd 1.3’te kullanılan POSIX
62 katmanının yerine işletim sistemine özgü özellikleri
63 kullanabildiğinden, Apache HTTP Sunucusunun Windows sürümü artık çok
64 daha verimli bir duruma gelmiştir. Aynı fayda özelleştirilmiş MPM’lerle
65 diğer işletim sistemlerine de sağlanmıştır.</li>
67 <li>Sunucu, belli bir sitenin ihtiyaçlarına uygun olarak daha iyi
68 kişiselleştirilebilmektedir. Örneğin, eski yazılım ile uyumluluk ve
69 kararlılığa önem veren siteler <module>prefork</module> modülünü
70 kullanabilirken, daha geniş ölçeklenebilirlik gerektiren siteler
71 <module>worker</module> veya <module>event</module> gibi evreli MPM
72 modüllerinden birini seçebilmektedir.</li>
75 <p>Kullanıcı açısından MPM’lerin diğer Apache httpd modüllerinden görünüşte
76 bir farkı yoktur. Asıl fark sunucuya yüklenebilecek azami MPM modülü
77 sayısının bir ve yalnız bir olarak sınırlanmış olmasıdır. Mevcut MPM
78 modülleri <a href="mod/">modül dizini</a> sayfasında listelenmiştir.</p>
82 <section id="defaults"><title>Öntanımlı MPM’ler</title>
84 <p>Aşağıdaki tabloda çeşitli işletim sistemlerinde öntanımlı olan MPM’ler
85 listelenmiştir. Derleme sırasında başka bir seçim yapmadığınız takdirde
86 bu işletim sistemlerinde bu MPM’ler seçilmiş olacaktır.</p>
88 <table border="1" style="zebra">
89 <columnspec><column width=".2"/><column width=".2"/></columnspec>
90 <tr><td>Netware</td><td><module>mpm_netware</module></td></tr>
91 <tr><td>OS/2</td><td><module>mpmt_os2</module></td></tr>
92 <tr><td>Unix</td><td>Platformun yapabildiklerine bağlı olarak,
93 <module>prefork</module>, <module>worker</module> veya
94 <module>event</module></td></tr>
95 <tr><td>Windows</td><td><module>mpm_winnt</module></td></tr>
99 <section id="static"><title>Bir MPM'i bir duruk modül olarak derlemek</title>
101 <p>MPM'ler tüm platformlarda duruk (static) modüller olarak derlenebilir.
102 Derleme sırasında tek bir modül seçilir ve sunucu ile ilintilenir. MPM
103 değiştirilmek istenirse sunucunun yeniden derlenmesi gerekir.</p>
105 <p>Öntanımlı MPM seçimin değiştirmek için <program>configure</program>
106 betiğinin <code>--with-mpm=<em>AD</em></code> seçeneği kullanılır.
107 Buradaki <em>AD</em> istenen MPM'in ismidir.</p>
109 <p>Sunucu bir kere derlendi mi, hangi MPM'in seçilmiş olduğunu
110 <code>./httpd -l</code> komutuyla öğrenebilirsiniz. Bu komut, içerilen
111 MPM dahil, sunucu içinde derlenmiş bütüm modülleri listeler.</p>
115 <section id="dynamic"><title>Bir MPM'i bir DSO modülü olarak derlemek</title>
117 <p>Unix ve benzeri platformlarda, MPM'ler DSO modülleri olarak derlenebilir
118 ve diğer DSO modülleri gibi sunucuya devingen olarak yüklenebilir. DSO
119 modülü olarak derlenen MPM'ler, sunucunun yeniden derlenmesini
120 gerektirmeden <directive module="mod_so">LoadModule</directive> yönergesi
121 güncellenerek değiştirilebilir.</p>
123 <p>Bu özellik <program>configure</program> betiğinin
124 <code>--enable-mpms-shared</code> seçeneği ile etkinleştirilebilir.
125 <code><em>all</em></code> değeri belirtilerek platform için
126 kullanılabilen tüm modüller kurulur. İstenirse, değer olarak bir MPM
127 listesi de belirtilebilir.</p>
129 <p>Özdevinimli olarak seçilerek veya <program>configure</program> betiğine
130 <code>--with-mpm</code> seçeneğiyle belirtilerek seçilen öntanımlı MPM
131 üretilen sunucu yapılandırma dosyasıyla yüklenir. Farklı bir MPM seçmek
132 için MPM'i <directive module="mod_so">LoadModule</directive> yönergesinde