1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mpm_common - Apache HTTP サーバ</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">モジュール</a> | <a href="../mod/directives.html">ディレクティブ</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">用語</a> | <a href="../sitemap.html">サイトマップ</a></p>
<p class="apache">Apache HTTP サーバ バージョン 2.3</p>
<img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP サーバ</a> > <a href="http://httpd.apache.org/docs/">ドキュメンテーション</a> > <a href="../">バージョン
2.3</a> > <a href="./">モジュール</a></div>
<div id="page-content">
<div id="preamble"><h1>Apache MPM 共通ディレクティブ</h1>
<div class="toplang">
<p><span>言語: </span><a href="../de/mod/mpm_common.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="../en/mod/mpm_common.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../ja/mod/mpm_common.html" title="Japanese"> ja </a> |
<a href="../tr/mod/mpm_common.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">説明:</a></th><td>二つ以上のマルチプロセッシングモジュール (MPM)
で実装されているディレクティブのコレクション</td></tr>
<tr><th><a href="module-dict.html#Status">ステータス:</a></th><td>MPM</td></tr></table>
</div>
<div id="quickview"><h3 class="directives">ディレクティブ</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#coredumpdirectory">CoreDumpDirectory</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#enableexceptionhook">EnableExceptionHook</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#gracefulshutdowntimeout">GracefulShutdownTimeout</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#listen">Listen</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#listenbacklog">ListenBackLog</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#maxclients">MaxClients</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#maxconnectionsperchild">MaxConnectionsPerChild</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#maxmemfree">MaxMemFree</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#maxsparethreads">MaxSpareThreads</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#minsparethreads">MinSpareThreads</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#pidfile">PidFile</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#receivebuffersize">ReceiveBufferSize</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#scoreboardfile">ScoreBoardFile</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#sendbuffersize">SendBufferSize</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#serverlimit">ServerLimit</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#startservers">StartServers</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#startthreads">StartThreads</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#threadlimit">ThreadLimit</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#threadsperchild">ThreadsPerChild</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#threadstacksize">ThreadStackSize</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="CoreDumpDirectory" id="CoreDumpDirectory">CoreDumpDirectory</a> <a name="coredumpdirectory" id="coredumpdirectory">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Apache がコアダンプする前に移動を試みるディレクトリ
</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>CoreDumpDirectory <var>directory</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>デフォルトの設定は説明文を読んでください</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>Apache がコアダンプする前に移動を試みるディレクトリを制御します。
デフォルト値は <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>
ディレクトリですが、このディレクトリはサーバの実行されているユーザ権限で
書き込み可能であるべきではないので、通常はコアダンプは書き込まれません。
デバッグのためにコアダンプが必要であれば、
このディレクティブを使って他の位置にコアダンプを書き出すようにできます。</p>
<div class="note"><h3>Linux でのコアダンプ</h3>
<p>Apache が root として起動されて、別のユーザの権限に以降した場合は
Linux のカーネルはディレクトリがプロセスの権限で書き込み可能な場合でさえも
コアダンプを<em>無効</em>にします。Apache (2.0.46 以降) は
Linux 2.4 以降ではコアダンプを行なうように再指定しますが、それは
<code class="directive">CoreDumpDirectory</code> を明示的に設定したときに
限ります。</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="EnableExceptionHook" id="EnableExceptionHook">EnableExceptionHook</a> <a name="enableexceptionhook" id="enableexceptionhook">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クラッシュの後に例外ハンドラを実行するフックを有効にする</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>EnableExceptionHook On|Off</code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>EnableExceptionHook Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>2.0.49 以降</td></tr>
</table>
<p>安全上の理由から、<code>--enable-exception-hook</code> configure
オプションを有効にした場合にのみ、このディレクティブを利用できます。
外部モジュールをプラグインして、子がクラッシュした後に何か実行できるような
フックを有効にします。</p>
<p>このような外部モジュールは、既に二つ存在していて、
<code>mod_whatkilledus</code> と <code>mod_backtrace</code>
がこのフックを活用します。これらの詳細については Jeff Trawick
さんの <a href="http://www.apache.org/~trawick/exception_hook.html">EnableExceptionHook site</a> を参照してください。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="GracefulShutdownTimeout" id="GracefulShutdownTimeout">GracefulShutdownTimeout</a> <a name="gracefulshutdowntimeout" id="gracefulshutdowntimeout">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>穏やかな停止をかけた後、終了するまで待つ時間</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>GracefulShutDownTimeout <var>seconds</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>GracefulShutDownTimeout 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/event.html">event</a></code></td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>2.2 以降</td></tr>
</table>
<p><code class="directive">GracefulShutdownTimeout</code> には
サーバーが "graceful-stop" シグナルを受け取ってから現在の
リクエストの処理を最大で何秒間続けるかを指定します。</p>
<p>この値をゼロに設定すると、処理中として残っているリクエストが
全て完了するまでサーバーは終了しません。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="Listen" id="Listen">Listen</a> <a name="listen" id="listen">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>サーバが listen するIP アドレスとポート番号</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>Listen [<var>IP-address</var>:]<var>portnumber</var> [<var>protocol</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/event.html">event</a></code></td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0 から必須ディレクティブ。<var>protocol</var>
引数は 2.1.5 で追加。</td></tr>
</table>
<p><code class="directive">Listen</code> ディレクティブは Apache
が特定の IP アドレスやポート番号だけを listen するように指定します。
デフォルトでは全ての IP インターフェースのリクエストに応答します。
<code class="directive">Listen</code> ディレクティブは
現在は必須のディレクティブとなりました。
もし設定ファイルになければ、サーバは起動に失敗します。
これは以前のバージョンの Apache から変更のあった部分です。</p>
<p><code class="directive">Listen</code> ディレクティブでは、特定のポートあるいは
アドレスとポートの組み合わせから入ってくるリクエストに対して
応答するように指定します。
もしポート番号だけが指定された場合は、サーバは全インターフェースの
指定されたポート番号に対して listen します。
IP アドレスがポートとともに指定された場合は、
サーバは指定されたポートとインターフェースに対して listen
します。</p>
<p>複数のアドレスとポートに対して listen するように、
複数の <code class="directive">Listen</code> ディレクティブを使うこともできます。
サーバは列挙されたアドレスとポート全てからのリクエストに対して
応答します。</p>
<p>例えば、サーバが 80 番ポートと 8000 番ポートの両方の
コネクションを受け入れる場合は、次のようにします。</p>
<div class="example"><p><code>
Listen 80<br />
Listen 8000
</code></p></div>
<p>二つの特定のインターフェースとポート番号からのコネクションを
受け入れるようにするには、次のようにします。</p>
<div class="example"><p><code>
Listen 192.170.2.1:80<br />
Listen 192.170.2.5:8000
</code></p></div>
<p>IPv6 アドレスは角括弧で囲まなければなりません。
例えば次の例のようにです。</p>
<div class="example"><p><code>
Listen [2001:db8::a00:20ff:fea7:ccea]:80
</code></p></div>
<p><var>protocol</var> オプション引数は通常の設定では必要ありません。
無指定の場合、443 番ポートには <code>https</code> が、他のポートには
<code>http</code> がデフォルト値として使用されます。
protocol 指定は、どのモジュールがリクエストを処理するかを決定し、
<code class="directive"><a href="../mod/core.html#acceptfilter">AcceptFilter</a></code>
によるプロトコル特有の最適化を行うようにします。</p>
<p>非標準なポートで運用している際にのみ protocol 指定が必要になります。
たとえば <code>https</code> なサイトを 8443 番ポートで運用している場合 :</p>
<div class="example"><p><code>
Listen 192.170.2.1:8443 https
</code></p></div>
<div class="note"><h3>エラー条件</h3>
同一 IP アドレスとポートの組に、複数の <code class="directive">Listen</code>
ディレクティブを指定してしまうと、<code>Address already in use</code>
というエラーメッセージを受けることになります。
</div>
<h3>参照</h3>
<ul>
<li><a href="../dns-caveats.html">DNS の問題</a></li>
<li><a href="../bind.html">Apache
が使用するアドレスとポートの設定</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ListenBackLog" id="ListenBackLog">ListenBackLog</a> <a name="listenbacklog" id="listenbacklog">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>保留状態のコネクションのキューの最大長</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ListenBacklog <var>backlog</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ListenBacklog 511</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>保留状態のコネクションのキューの最大長です。
一般的には調整する必要はありませんし、調整は望ましくありません。
しかし、TCP SYN フラッドアタックの状況下におかれる場合に、
増やした方が望ましいシステムもあります。
<code>listen(2)</code> システムコールのバックログパラメータを
ご覧下さい。</p>
<p>この値は OS により、小さな数に抑えられます。
値は OS 毎に異なっています。また多くの OS では、
バックログとして指定されている値ちょうどまで使っているわけではなく、
設定されている値に基づいて (通常は設定値よりも大きな値を)
使っていることに注意してください。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="MaxClients" id="MaxClients">MaxClients</a> <a name="maxclients" id="maxclients">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>リクエストに応答するために作成される
子プロセスの最大個数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxClients <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用法をご覧下さい。</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p><code class="directive">MaxClients</code> ディレクティブは、
応答することのできる同時リクエスト数を設定します。
<code class="directive">MaxClients</code> 制限数を越えるコネクションは通常、
<code class="directive"><a href="#listenbacklog">ListenBacklog</a></code>
ディレクティブで設定した数までキューに入ります。
他のリクエストの最後まで達して子プロセスが空くと、
次のコネクションに応答します。</p>
<p>スレッドを用いないサーバ (<em>すなわち</em> <code class="module"><a href="../mod/prefork.html">prefork</a></code>)
では、<code class="directive">MaxClients</code>
は、リクエストに応答するために起動される
子プロセスの最大数となります。
デフォルト値は <code>256</code> で、これを増加させたい場合は、
<code class="directive"><a href="#serverlimit">ServerLimit</a></code>
の値も増加させる必要があります。</p>
<p>スレッドを用いるサーバや、ハイブリッドサーバ (<em>すなわち</em>
<code class="module"><a href="../mod/beos.html">beos</a></code> <code class="module"><a href="../mod/worker.html">worker</a></code>)
では、<code class="directive">MaxClients</code>
は、クライアントに応答できるスレッドの総数を制限します。
<code class="module"><a href="../mod/beos.html">beos</a></code> でのデフォルト値は <code>50</code> です。
ハイブリッド MPM でのデフォルト値は <code>16</code>
<code class="directive"><a href="#serverlimit">ServerLimit</a></code>
の <code>25</code> 倍 (<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>) です。
<code class="directive">MaxClients</code>
を 16 プロセス以上必要な値まで増加させたい場合は、
<code class="directive"><a href="#serverlimit">ServerLimit</a></code>
も増加させる必要があります。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="MaxConnectionsPerChild" id="MaxConnectionsPerChild">MaxConnectionsPerChild</a> <a name="maxconnectionsperchild" id="maxconnectionsperchild">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>Limit on the number of connections that an individual child server
will handle during its life</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxConnectionsPerChild <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>MaxConnectionsPerChild 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/event.html">event</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Available Apache HTTP Server 2.3.9 and later. The old name
<code>MaxRequestsPerChild</code> is still supported.</td></tr>
</table><p>The documentation for this directive has
not been translated yet. Please have a look at the English
version.</p></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="MaxMemFree" id="MaxMemFree">MaxMemFree</a> <a name="maxmemfree" id="maxmemfree">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td><code>free()</code> が呼ばれない限り、
主メモリアロケータが保持し続けられるメモリの最大量</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxMemFree <var>KBytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>MaxMemFree 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code></td></tr>
</table>
<p><code class="directive">MaxMemFree</code> ディレクティブは
<code>free()</code> が呼ばれない限り、
主アロケータが保持できる空のメモリの最大値をキロバイト単位で設定します。
設定されていないか、零に設定されているときは、無制限になります。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="MaxSpareThreads" id="MaxSpareThreads">MaxSpareThreads</a> <a name="maxsparethreads" id="maxsparethreads">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>アイドルスレッドの最大数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MaxSpareThreads <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用法をご覧下さい。</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>アイドルなスレッドの最大数です。異なる MPM ではそれぞれ、
このディレクティブは異なる取り扱われ方をされます。</p>
<p><code class="module"><a href="../mod/perchild.html">perchild</a></code> では、
デフォルトは <code>MaxSpareThreads 10</code> です。
この MPM はアイドルスレッド数を、それぞれの子プロセスごとに監視します。
子プロセスにアイドルスレッドが多すぎる場合は、
サーバはその子プロセスに含まれるスレッドを終了し始めます。</p>
<p><code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>,
<code class="module"><a href="../mod/threadpool.html">threadpool</a></code> では、
デフォルトは <code>MaxSpareThreads 250</code> です。
この MPM はアイドルスレッド数をサーバ全体で監視します。
サーバでアイドルスレッド数が多すぎる場合は、
この数字よりも少ない数になるまで子プロセスを終了します。</p>
<p><code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code> では、
デフォルトは <code>MaxSpareThreads 100</code> です。
この MPM はシングルプロセスで実行されますので、
スペアスレッド数もサーバ全体で勘定します。</p>
<p><code class="module"><a href="../mod/beos.html">beos</a></code> と <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> は
<code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code> と似た挙動をします。
<code class="module"><a href="../mod/beos.html">beos</a></code> でのデフォルト値は <code>MaxSpareThreads 50</code>
です。<code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> でのデフォルト値は <code>10</code>
です。</p>
<div class="note"><h3>制限事項</h3>
<p><code class="directive">MaxSpareThreads</code> の取る値には制限があります。
Apache は次の規則に従って自動的に補正します。</p>
<ul>
<li><code class="module"><a href="../mod/perchild.html">perchild</a></code> では、
<code class="directive">MaxSpareThreads</code> が
<code class="directive"><a href="#threadlimit">ThreadLimit</a></code>
と等しいかそれ以下である必要があります。</li>
<li><code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code> は
<code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code>
よりも大きい必要があります。</li>
<li><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>,
<code class="module"><a href="../mod/worker.html">worker</a></code> では、
<code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code> と
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
で決まる総和と等しいか大きい必要があります。</li>
</ul>
</div>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#minsparethreads">MinSpareThreads</a></code></li>
<li><code class="directive"><a href="#startservers">StartServers</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="MinSpareThreads" id="MinSpareThreads">MinSpareThreads</a> <a name="minsparethreads" id="minsparethreads">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>リクエストに応答することのできる
アイドルスレッド数の最小数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>MinSpareThreads <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用方法をご覧下さい。</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>リクエストに応答するスレッド数の最小値です。
異なる MPM ではそれぞれ、
このディレクティブは異なる取り扱われ方をします。</p>
<p><code class="module"><a href="../mod/perchild.html">perchild</a></code> では、
デフォルトは <code>MinSpareThreads 5</code> で、
アイドルスレッド数を子プロセス毎に監視します。
もし子プロセスに十分な数のスレッドがなければ、
サーバはその子プロセスに新しいスレッドを作り始めます。
ですから、<code class="directive"><a href="../mod/perchild.html#numservers">NumServers</a></code>
を <code>10</code> に、<code class="directive">MinSpareThreads</code> を
<code>5</code> にした場合は、最小でも 50 のアイドルスレッドが
システム上にあることになります。</p>
<p><code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>,
<code class="module"><a href="../mod/threadpool.html">threadpool</a></code> では、
デフォルトは <code>MinSpareThreads 75</code> で、
アイドルスレッド数をサーバ全体で監視します。
もしサーバに十分な数のアイドルスレッドがなければ、
アイドルスレッド数がこの数 <var>number</var> よりも大きくなるまで
新しい子プロセスが生成されます。</p>
<p><code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code> では、
デフォルトは <code>MinSpareThreads 10</code> で、
シングルプロセス MPM ですので、サーバ全体で管理されます。</p>
<p><code class="module"><a href="../mod/beos.html">beos</a></code> と <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> は、
<code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>によく似ています。
<code class="module"><a href="../mod/beos.html">beos</a></code> でのデフォルトは <code>MinSpareThreads 1</code>
です。<code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> でのデフォルトは
<code>5</code> です。</p>
<h3>参照</h3>
<ul>
<li><code class="directive"><a href="#maxsparethreads">MaxSpareThreads</a></code></li>
<li><code class="directive"><a href="#startservers">StartServers</a></code></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="PidFile" id="PidFile">PidFile</a> <a name="pidfile" id="pidfile">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>デーモンのプロセス ID
をサーバが記録するためのファイル</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>PidFile <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>PidFile logs/httpd.pid</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p><code class="directive">PidFile</code> ディレクティブで、
デーモンのプロセス ID をサーバが記録するファイルを設定します。
ファイル名が絶対パスでない場合は、
<code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>
からの相対的なものとして扱われます。</p>
<div class="example"><h3>例</h3><p><code>
PidFile /var/run/apache.pid
</code></p></div>
<p>サーバが <code class="directive"><a href="../mod/core.html#errorlog">ErrorLog</a></code>
や <code class="directive"><a href="../mod/mod_log_config.html#transferlog">TransferLog</a></code>
を閉じて開き直したり、設定ファイルを
再読込したりさせるために、サーバにシグナルを送ることができると
便利なことがあります。
これは SIGHUP (kill -1) シグナルを <code class="directive">PidFile</code>
に書かれているプロセス ID に送ることでできます。</p>
<p><code class="directive">PidFile</code> には、ログファイルの設置位置や
<a href="../misc/security_tips.html#serverroot">セキュリティ</a>
と全く同じ注意点があります。</p>
<div class="note"><h3>注意</h3>
<p>Apache 2 では、
<code class="program"><a href="../programs/apachectl.html">apachectl</a></code>
スクリプトのみを使用してサーバの (再) 起動や停止を
行なうことを推奨しています。</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ReceiveBufferSize" id="ReceiveBufferSize">ReceiveBufferSize</a> <a name="receivebuffersize" id="receivebuffersize">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>TCP 受信バッファサイズ</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ReceiveBufferSize <var>bytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ReceiveBufferSize 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>サーバは TCP 受信バッファサイズを指定されたバイト数に設定します。</p>
<p><code>0</code>にした場合、OS のデフォルト値が使用されます。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ScoreBoardFile" id="ScoreBoardFile">ScoreBoardFile</a> <a name="scoreboardfile" id="scoreboardfile">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>子プロセスと連携するためのデータを保存する
ファイルの位置</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ScoreBoardFile <var>file-path</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>ScoreBoardFile logs/apache_status</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>Apache は親プロセスと子プロセス間の通信にスコアボードを用います。
この通信機能にファイルを必要とするアーキテクチャもあります。
ファイルが指定されていなければ、Apache はまずメモリ上
(匿名共有メモリ) にスコアボードを作ろうとし、それが失敗すると
ディスク上にファイル (ファイルベースの共有メモリ) を作ろうとします。
このディレクティブを指定すると、Apache
は必ずディスクにファイルを生成します。</p>
<div class="example"><h3>例</h3><p><code>
ScoreBoardFile /var/run/apache_status
</code></p></div>
<p>ファイルベースの共有メモリは、サードパーティー製のアプリケーションで
スコアボードに直接アクセスする必要がある場合に役に立ちます。</p>
<p><code class="directive">ScoreBoardFile</code> を使う場合、
RAM ディスク上に置くとスピードが向上するでしょう。
しかし、ログファイルの設置位置や
<a href="../misc/security_tips.html">セキュリティ</a>
と同様の注意点があるので、注意してください。</p>
<h3>参照</h3>
<ul>
<li><a href="../stopping.html">Apache の停止と再起動</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="SendBufferSize" id="SendBufferSize">SendBufferSize</a> <a name="sendbuffersize" id="sendbuffersize">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>TCP バッファサイズ</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>SendBufferSize <var>bytes</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>SendBufferSize 0</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>サーバは TCP 送信バッファサイズを指定されたバイト数に設定します。
高速で高レイテンシな環境で
(<em>例</em> 100ms 程度、大陸横断高速通信路など)
古い一般的な OS のデフォルト値を増やすのに非常に便利です。</p>
<p><code>0</code>にした場合、OS のデフォルト値が使用されます。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ServerLimit" id="ServerLimit">ServerLimit</a> <a name="serverlimit" id="serverlimit">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>設定可能なサーバプロセス数の上限</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ServerLimit <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用法を参照</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p><code class="module"><a href="../mod/prefork.html">prefork</a></code> MPM の場合は、このディレクティブは
Apache プロセス稼働中における
<code class="directive"><a href="#maxclients">MaxClients</a></code>
に設定可能な上限値を設定することになります
<span class="transnote">(<em>訳注:</em> prefork の場合は同時クライアント数 = サーバプロセス数なので)</span>。
<code class="module"><a href="../mod/worker.html">worker</a></code> MPM の場合には、このディレクティブは
<code class="directive"><a href="#threadlimit">ThreadLimit</a></code>
ディレクティブと組み合わせて、
Apache プロセス稼働中における
<code class="directive"><a href="#maxclients">MaxClients</a></code>
に設定可能な上限値を設定することになります。
このディレクティブを変更して再起動<span class="transnote">(<em>訳注:</em> apachectl
restart)</span>しても無視されますが、
<code class="directive"><a href="#maxclients">MaxClients</a></code>
は再起動で変更することができます。
</p>
<p>このディレクティブを使用する際は特に注意してください。
<code class="directive">ServerLimit</code> が必要以上に大きな値に
設定された場合は、余計な未使用共有メモリが割り当てられます。
<code class="directive">ServerLimit</code> と
<code class="directive"><a href="#maxclients">MaxClients</a></code>
がシステムの扱える範囲を越えた設定値になっていると、
Apache は起動しないか、起動しても不安定になるでしょう。</p>
<p><code class="module"><a href="../mod/prefork.html">prefork</a></code> MPM では、
<code class="directive"><a href="#maxclients">MaxClients</a></code>
を 256 (デフォルト) よりも大きな値に設定する必要がある時にだけ使用してください。
希望の <code class="directive"><a href="#maxclients">MaxClients</a></code>
数とくらべて、必要以上に大きな値を指定することは避けてください。</p>
<p><code class="module"><a href="../mod/worker.html">worker</a></code>, <code class="module"><a href="../mod/leader.html">leader</a></code>,
<code class="module"><a href="../mod/threadpool.html">threadpool</a></code> MPM では、
<code class="directive"><a href="#maxclients">MaxClients</a></code> と
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
の設定で 16 サーバプロセス (デフォルト)
以上必要になる場合にのみ使用してください。希望の
<code class="directive"><a href="#maxclients ">MaxClients </a></code> と
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
とくらべて、必要となるサーバプロセス数以上に大きな値を
設定することは避けてください。</p>
<p><code class="module"><a href="../mod/perchild.html">perchild</a></code> MPM では、
<code class="directive"><a href="../mod/perchild.html#numservers">NumServers</a></code> を 8 (デフォルト)
よろいも大きな値に設定する必要があるときにのみ使用してください。</p>
<div class="note"><h3>注意</h3>
<p><code>ServerLimit 20000</code> という制限付きでコンパイルされています
(<code class="module"><a href="../mod/prefork.html">prefork</a></code> MPM では <code>200000</code>) 。
これはスペルミスによって誤って酷い状況になるのを、
回避するための処置です。</p>
</div>
<h3>参照</h3>
<ul>
<li><a href="../stopping.html">Apache の停止と再起動</a></li>
</ul>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="StartServers" id="StartServers">StartServers</a> <a name="startservers" id="startservers">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>起動時に生成される子サーバプロセスの数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>StartServers <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用方法を参照</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code>, <code class="module"><a href="../mod/prefork.html">prefork</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p><code class="directive">StartServers</code> ディレクティブは、
起動時に生成される子サーバプロセスの数を設定します。
プロセス数は負荷に応じて動的に制御されますので、
通常はこの値を調整する理由はあまりないでしょう。</p>
<p>デフォルト値は MPM ごとに異なります。
<code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>,
<code class="module"><a href="../mod/worker.html">worker</a></code> は <code>StartServers 3</code> です。
<code class="module"><a href="../mod/prefork.html">prefork</a></code> は <code>5</code> で、
<code class="module"><a href="../mod/mpmt_os2.html">mpmt_os2</a></code> は <code>2</code> です。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="StartThreads" id="StartThreads">StartThreads</a> <a name="startthreads" id="startthreads">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>起動時に生成されるスレッドの数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>StartThreads <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用方法を参照</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/beos.html">beos</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code></td></tr>
</table>
<p>起動時に生成されるスレッドの数です。
スレッド数は負荷に応じて動的に制御されますので、
通常はこの値を調整する理由はあまりないでしょう。</p>
<p><code class="module"><a href="../mod/perchild.html">perchild</a></code> でのデフォルトは
<code>StartThreads 5</code> で、このディレクティブは起動時に
プロセス毎のスレッド数を追跡します。</p>
<p><code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code> でのデフォルトは
<code>StartThreads 50</code> で、
この場合プロセスは一つしかないので、
起動時にリクエストに応答するスレッドの総数となります。</p>
<p><code class="module"><a href="../mod/beos.html">beos</a></code> でのデフォルトは <code>StartThreads
10</code> です。
また、起動時に生成されるスレッドの総数にも反映されます。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ThreadLimit" id="ThreadLimit">ThreadLimit</a> <a name="threadlimit" id="threadlimit">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>設定可能な子プロセス毎のスレッド数の上限を
設定します</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ThreadLimit <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用方法を参照</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>Apache 2.0.41 とそれ以降の <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>
で利用可能</td></tr>
</table>
<p>このディレクティブは
Apache プロセス稼働中における
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
に設定可能な上限値を設定します。再起動時にこのディレクティブの値を
変更しても無視されますが、
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
は再起動中に、このディレクティブで指定された上限値まで
変更することができます。</p>
<p>このディレクティブを使用する際は特に注意してください。
<code class="directive">ThreadLimit</code> が
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
よりもずっと大きな値に設定された場合は、
余計な未使用共有メモリが割り当てられてしまいます。
<code class="directive">ThreadLimit</code> が
<code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code>
の両方がシステムの扱える範囲を超えている場合は、
Apache は起動しないか、起動したとしても不安定になるでしょう。
このディレクティブの値は今使用している Apache の <code class="directive"><a href="#threadsperchild">ThreadsPerChild</a></code> の予想上限値を
超えた値には設定しないでください。
</p>
<p><code class="directive">ThreadLimit</code> のデフォルト値は
<code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code> のときは <code>1920</code> で、
他の場合は <code>64</code> です。</p>
<div class="note"><h3>注意</h3>
<p><code>ThreadLimit 20000</code> (<code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>
の場合は <code>ThreadLimit 15000</code> )
という制限付きでコンパイルされています。
これはスペルミスによって誤って酷い状況になるのを、
回避するための処置です。</p>
</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ThreadsPerChild" id="ThreadsPerChild">ThreadsPerChild</a> <a name="threadsperchild" id="threadsperchild">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>子プロセスそれぞれに生成されるスレッド数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ThreadsPerChild <var>number</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>詳細は使用方法を参照</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
</table>
<p>このディレクティブは、それぞれの子プロセスで生成される
スレッド数を設定します。
子プロセスは開始時にこれらのスレッドを生成して、
その後は生成しません。<code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code> のような、
子プロセスが一つしかないような MPM を利用しているのであれば、
この値はサーバの負荷全体を十分取り扱える程度に、
大きくなければなりません。<code class="module"><a href="../mod/worker.html">worker</a></code> のような、
子プロセスが複数あるような MPM を利用しているのであれば、
サーバの通常負荷を十分扱える程度に、
<em>スレッド総数</em>が多くなければなりません。</p>
<p><code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>での <code class="directive">ThreadsPerChild</code>
のデフォルト値は <code>64</code> で、他の場合は
<code>25</code> です。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="ThreadStackSize" id="ThreadStackSize">ThreadStackSize</a> <a name="threadstacksize" id="threadstacksize">ディレクティブ</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">説明:</a></th><td>クライアントのコネクションを受け持つスレッドが使用する
スタックのバイト数</td></tr>
<tr><th><a href="directive-dict.html#Syntax">構文:</a></th><td><code>ThreadStackSize <var>size</var></code></td></tr>
<tr><th><a href="directive-dict.html#Default">デフォルト:</a></th><td><code>NetWare では 65536。他の OS では違った値</code></td></tr>
<tr><th><a href="directive-dict.html#Context">コンテキスト:</a></th><td>サーバ設定ファイル</td></tr>
<tr><th><a href="directive-dict.html#Status">ステータス:</a></th><td>MPM</td></tr>
<tr><th><a href="directive-dict.html#Module">モジュール:</a></th><td><code class="module"><a href="../mod/leader.html">leader</a></code>, <code class="module"><a href="../mod/mpm_netware.html">mpm_netware</a></code>, <code class="module"><a href="../mod/mpm_winnt.html">mpm_winnt</a></code>, <code class="module"><a href="../mod/perchild.html">perchild</a></code>, <code class="module"><a href="../mod/threadpool.html">threadpool</a></code>, <code class="module"><a href="../mod/worker.html">worker</a></code></td></tr>
<tr><th><a href="directive-dict.html#Compatibility">互換性:</a></th><td>2.1 以降</td></tr>
</table>
<p>クライアントコネクションを受け持ち、コネクション処理に必要なモジュールの
呼び出しを行なっているスレッドの、(自動変数用の) スタックサイズは
<code class="directive">ThreadStackSize</code> ディレクティブで指定します。
大抵の場合 OS の指定しているスタックサイズのデフォルト値は
適切なものですが、調整が必要になる場合もあります:</p>
<ul>
<li>スレッドスタックサイズのデフォルト値が比較的小さく設定されている
プラットホーム (例えば HP-UX) では、自動変数用の領域で大きな容量を
使用するサードパーティ製モジュールのために Apache がクラッシュする
場合もあります。そのモジュールは他のプラットホームでは
スタックサイズが大きいために、快調に動作するかもしれません。
このタイプのクラッシュは、<code class="directive">ThreadStackSize</code>
で OS のデフォルト値より大きな値を指定することで解決します。
サードパーティ製モジュールでこの処置が必要であると記載されている
場合か、Apache の出力するメッセージでスレッドスタックサイズが
小さすぎると指摘されている場合にのみ、この調整をしてください。</li>
<li>デフォルトスレッドスタックサイズが、Web サーバ用途に必要な量よりも
明らかに大きすぎる場合、<code class="directive">ThreadStackSize</code>
を OS のデフォルト値よりも小さな値にすることで、子プロセスあたりの
スレッド数をより多く持たせられるようになります。
このタイプの調整は、テスト環境でウェブサーバを完全に
テストできる場合に限って行なうべきです。
まれに多数のスタックが要求されるリクエストを受けることがあるかも
しれないからです。
Web サーバの設定を変更すると、現在の <code class="directive">ThreadStackSize</code>
の設定が取り消される場合があります。</li>
</ul>
</div>
</div>
<div class="bottomlang">
<p><span>言語: </span><a href="../de/mod/mpm_common.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
<a href="../en/mod/mpm_common.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../ja/mod/mpm_common.html" title="Japanese"> ja </a> |
<a href="../tr/mod/mpm_common.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div id="footer">
<p class="apache">Copyright 2011 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">モジュール</a> | <a href="../mod/directives.html">ディレクティブ</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">用語</a> | <a href="../sitemap.html">サイトマップ</a></p></div>
</body></html>
|