1 /* Licensed to the Apache Software Foundation (ASF) under one or more
2 * contributor license agreements. See the NOTICE file distributed with
3 * this work for additional information regarding copyright ownership.
4 * The ASF licenses this file to You under the Apache License, Version 2.0
5 * (the "License"); you may not use this file except in compliance with
6 * the License. You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 #ifndef APACHE_MPM_DEFAULT_H
18 #define APACHE_MPM_DEFAULT_H
20 /* Number of servers to spawn off by default --- also, if fewer than
21 * this free when the caretaker checks, it will spawn more.
23 #ifndef DEFAULT_START_DAEMON
24 #define DEFAULT_START_DAEMON 1
27 /* Maximum number of *free* server processes --- more than this, and
31 #ifndef DEFAULT_MAX_FREE_DAEMON
32 #define DEFAULT_MAX_FREE_DAEMON 1
35 /* Minimum --- fewer than this, and more will be created */
37 #ifndef DEFAULT_MIN_FREE_DAEMON
38 #define DEFAULT_MIN_FREE_DAEMON 1
41 /* Limit on the threads per process. Clients will be locked out if more than
42 * this * HARD_SERVER_LIMIT are needed.
44 * We keep this for one reason it keeps the size of the scoreboard file small
45 * enough that we can read the whole thing without worrying too much about
48 #ifndef HARD_THREAD_LIMIT
49 #define HARD_THREAD_LIMIT 2048
52 #ifndef DEFAULT_THREADS_PER_CHILD
53 #define DEFAULT_THREADS_PER_CHILD 50
56 /* Number of threads to spawn off by default --- also, if fewer than
57 * this free when the caretaker checks, it will spawn more.
59 #ifndef DEFAULT_START_THREADS
60 #define DEFAULT_START_THREADS DEFAULT_THREADS_PER_CHILD
63 /* Maximum number of *free* threads --- more than this, and
67 #ifndef DEFAULT_MAX_FREE_THREADS
68 #define DEFAULT_MAX_FREE_THREADS 100
71 /* Minimum --- fewer than this, and more will be created */
73 #ifndef DEFAULT_MIN_FREE_THREADS
74 #define DEFAULT_MIN_FREE_THREADS 10
77 /* Check for definition of DEFAULT_REL_RUNTIMEDIR */
78 #ifndef DEFAULT_REL_RUNTIMEDIR
79 #define DEFAULT_REL_RUNTIMEDIR "logs"
82 /* File used for accept locking, when we use a file */
83 /*#ifndef DEFAULT_LOCKFILE
84 #define DEFAULT_LOCKFILE DEFAULT_REL_RUNTIMEDIR "/accept.lock"
88 /* Where the main/parent process's pid is logged */
89 /*#ifndef DEFAULT_PIDLOG
90 #define DEFAULT_PIDLOG DEFAULT_REL_RUNTIMEDIR "/httpd.pid"
95 * Interval, in microseconds, between scoreboard maintenance.
97 #ifndef SCOREBOARD_MAINTENANCE_INTERVAL
98 #define SCOREBOARD_MAINTENANCE_INTERVAL 1000000
101 /* Number of requests to try to handle in a single process. If <= 0,
102 * the children don't die off.
104 #ifndef DEFAULT_MAX_REQUESTS_PER_CHILD
105 #define DEFAULT_MAX_REQUESTS_PER_CHILD 0
108 #endif /* AP_MPM_DEFAULT_H */