Назад | Перейти на главную страницу

Конфигурация Apache Prefork

Я новичок в настройке VPS. Итак, я установил apache, php и mysql, и теперь мне нужно знать, как настроить Prefork для оптимизации Apache.

The system configuration  is:
CPU Cores 2 x 2 Ghz @ 4 Ghz
RAM Memory 2304 MB DDR3
Burst Memory 3 GB DDR3
Disk Space 30 GB SSD
Bandwidth 3 TB
SwitchPort 1 Gbps

Фактически, после linux, mysql, apache и php используется 250 МБ памяти.

Ну, посчитать не имею. Я видел на некоторых веб-сайтах такие вары, как:

KeepAlive On
KeepAliveTimeout 1
MaxKeepAliveRequests 100
StartServers 15
MinSpareServers 15
MaxSpareServers 15
MaxClients 20
MaxRequestsPerChild 0

или

StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0

Как я мог сделать: префорк или рабочий? Где и как размещаются вары? В httpd.conf?

Это не может быть решено только по характеристикам оборудования. Есть много важных вещей, особенно то, чему вы собираетесь служить.

Например:

Веб-сайт, который использует mod_php, должен использовать prefork, поскольку PHP может быть небезопасным для потоков. Если вы используете fcgi, вы можете использовать worker. Вы часто используете AJAX для push-уведомлений на сайте? Затем вы можете установить очень высокое значение MaxClient. Но вам нужно установить его ниже, чем Size Per Apache process * Clients что будет около 22 МБ на процесс. С другой стороны, вам может не понадобиться такой высокий MaxClient, если вы обслуживаете много статического контента. И запчасти тоже. Насколько вы готовы иметь в наличии «горячее».

На вопрос о производительности так нельзя ответить. Более того, это постоянное тестирование и обучение. Затягиваем винты и все смазываем маслом.

Вы должны проанализировать свою производительность с помощью инструмента для тестирования, например Скамья Apache. Попробуйте разные комбинации и проверьте их. Вот как вы получаете свою конфигурацию.