Чтобы установить: Рабочий Apache или Предварительное ветвление? Что (скидка-) преимущества каждого?

Первая вещь, которую я сделал бы в этой ситуации, состоит в том, чтобы выполнить Средство удаления Вредоносного программного обеспечения Microsoft. Это должно обнаружить наиболее распространенные вредоносные заражения. Можно сделать это, просто введя "mst.exe" в поле "Run" или в консоли командной строки.

Считайте более подробную информацию об этом вопросе о Serverfault: Некоторые вопросы о Средстве удаления Вредоносного программного обеспечения Microsoft Windows-MRT.


Существует этот поток форума, упоминая "Project1" как вредоносное программное обеспечение и "Предотвращение Выполнения Данных". Здесь снимок экрана, что показывает Диспетчер процессов, не предотвращает ли Windows выполнение:

alt text

55
задан 29 July 2009 в 15:43
5 ответов

Как в документах говорится, необходимо использовать предварительное ветвление MPM, если необходимо постараться не распараллеливать для совместимости с неориентированными на многопотоковое исполнение библиотеками. Как правило, любой нетривиальный модуль Apache (mod_php - или, более точно, несметное число расширений и библиотек, которые это связывает с - быть каноническим примером), имеет своего рода неориентированную на многопотоковое исполнение библиотеку (или имеет неориентированный на многопотоковое исполнение код в нем), поэтому если Вы не используете симпатичную установку Apache запаса, я пошел бы для предварительного ветвления MPM.

40
ответ дан 28 November 2019 в 19:35
  • 1
    Я рекомендовал бы рабочему MPM, если you' ре, выполняющее PHP. Рабочий является рекомендуемым MPM от апача и дает лучшую производительность и ниже наверху. It' s только, что разработчик PHP никогда не слышал о потокобезопасности, что необходимо использовать предварительное ветвление. –  David Pashley 24 July 2009 в 16:05
  • 2
    PHP был ориентирован на многопотоковое исполнение в течение очень долгого времени. Они только предлагают использование pre-forkers, поскольку они не могут управлять тем, что делают другие библиотеки. Выход, обвиняющий PHP в бездействиях разработчиков других. –  Alister Bulman 24 July 2009 в 16:59
  • 3
    PHP может быть ориентирован на многопотоковое исполнение (хотя я сомневаюсь относительно этого), но все библиотеки, с которыми это связывается, определенно нет. Здесь мы запускаем несколько довольно больших приложений PHP, и каждые несколько месяцев мы пытаемся переключиться от предварительного ветвления до рабочего, но мы немедленно получаем поврежденные данные. –  Aleksandar Ivanisevic 24 July 2009 в 17:04
  • 4
    По крайней мере, функция, заменяющая огибающий, не будет ориентирована на многопотоковое исполнение, setlocal php.net/manual/en/function.setlocale.php является общим exemple этого. –  radius 24 July 2009 в 20:27

Это - что-то очень конкретное к тому, чему Вы служите. При выполнении большого количества небольших статических соединений потоки были бы легче и быстрее. Если у Вас просто есть немного больших приложений, постоянно порождаемых, предварительное ветвление могло бы иметь край, должный, это - зрелость и устойчивость. Почему не только настраивает то, в чем Вы нуждаетесь, тестируете один, выгружаете модуль MPM, попробуйте его снова, посмотрите, какой подходит Вам лучше?

2
ответ дан 28 November 2019 в 19:35

The classic solution to running unsafe extensions while serving large numbers (>100) of concurrent connections is to run PHP on fastCGI (mod_fcgid, a native apache module) and proxy dynamic requests to that from an apache instance that runs the Worker MPM.

This would enable you to scale from a few hundred up to >1000 concurrent connections with a modest amount of memory (4~8GB) when serving a mix of static and dynamic content.

Of course, you should also investigate front-end caching solutions as part of your overall deployment (memcached, varnish).

Alternatively, upgrade to apache 2.4 and its native event MPM, which handles concurrency in a much improved fashion (threads are fired off upon connection, not waiting to be polled.)

13
ответ дан 28 November 2019 в 19:35

It's been about 3 years since the question got posted but I would recommend you go with worker MPM instead of pre-fork even if using PHP, to get the better performance.

As to the differences, pre-fork is non-threaded hence the server forks a process for each client request (it pre-forks in anticipation of new requests so that forking doesn't eat into the response time). Since requests are server in a separate process, this usually taxes your memory and CPU a lot more than. The worker bring multi-threading which is lighter and has better memory utilization.

6
ответ дан 28 November 2019 в 19:35

that needs on the type and kind of traffic you will have. And also first you need to understand the main difference between the prefork and worker. Hope the below article will help you figure out! http://slashroot.in/how-is-nginx-different-from-apache

1
ответ дан 28 November 2019 в 19:35

Теги

Похожие вопросы