mpm_default.h revision 8f29f672255fe76964af126f9ac8c3c864274fa0
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering/* Licensed to the Apache Software Foundation (ASF) under one or more
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * contributor license agreements. See the NOTICE file distributed with
12b42c76672a66c2d4ea7212c14f8f1b5a62b78dTom Gundersen * this work for additional information regarding copyright ownership.
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * The ASF licenses this file to You under the Apache License, Version 2.0
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * (the "License"); you may not use this file except in compliance with
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * the License. You may obtain a copy of the License at
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering *
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * http://www.apache.org/licenses/LICENSE-2.0
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering *
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * Unless required by applicable law or agreed to in writing, software
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * distributed under the License is distributed on an "AS IS" BASIS,
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * See the License for the specific language governing permissions and
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * limitations under the License.
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering */
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering/**
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * @file winnt/mpm_default.h
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * @brief win32 MPM defaults
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering *
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * @addtogroup APACHE_MPM_WINNT
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering * @{
7caa86ac4d19f65e396d759bfb02b96646fc09ebLennart Poettering */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#ifndef APACHE_MPM_DEFAULT_H
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#define APACHE_MPM_DEFAULT_H
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek/* Default limit on the maximum setting of the ThreadsPerChild configuration
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * directive. This limit can be overridden with the ThreadLimit directive.
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * This limit directly influences the amount of shared storage that is allocated
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * for the scoreboard. DEFAULT_THREAD_LIMIT represents a good compromise
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * between scoreboard size and the ability of the server to handle the most
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * common installation requirements.
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#ifndef DEFAULT_THREAD_LIMIT
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#define DEFAULT_THREAD_LIMIT 1920
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#endif
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek/* The ThreadLimit directive can be used to override the DEFAULT_THREAD_LIMIT.
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * ThreadLimit cannot be tuned larger than MAX_THREAD_LIMIT.
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * This is a sort of compile-time limit to help catch typos.
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#ifndef MAX_THREAD_LIMIT
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#define MAX_THREAD_LIMIT 15000
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#endif
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek/* Number of threads started in the child process in the absence
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek * of a ThreadsPerChild configuration directive
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#ifndef DEFAULT_THREADS_PER_CHILD
12b42c76672a66c2d4ea7212c14f8f1b5a62b78dTom Gundersen#define DEFAULT_THREADS_PER_CHILD 64
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#endif
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek/* Max number of child processes allowed.
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#define HARD_SERVER_LIMIT 1
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek#endif /* AP_MPM_DEFAULT_H */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek/** @} */
798d3a524ea57aaf40cb53858aaa45ec702f012dZbigniew Jędrzejewski-Szmek