Хостинг на linux снуля (Маны)
Модераторы: SLEDopit, Модераторы разделов
-
leksstav
- Сообщения: 331
Хостинг на linux снуля
Всех приветствую !
Прошу поделиться ссылками на мануалы, и видеоуроки по настройке хостинга.
apache+php+mysql
Желательно пошаговый мануал.
Если будет opensuse то вообще прекрасно.
Прошу поделиться ссылками на мануалы, и видеоуроки по настройке хостинга.
apache+php+mysql
Желательно пошаговый мануал.
Если будет opensuse то вообще прекрасно.
-
Bizdelnick
- Модератор
- Сообщения: 21359
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Хостинг на linux снуля
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
leksstav
- Сообщения: 331
Re: Хостинг на linux снуля
Спасибо, Bizdelnick.
Есть что то желательно на русском ?
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Хостинг на linux снуля
видеоуроки - зло! то, на что вы потратите 5 минут чтения, вас придётся 20 минут смотреть. ещё и найти нужный кусок проблематично.
посмотрите хотя бы на связку nginx + apache (а лучше nginx + php-fpm).
Вас в гугле забанили?
google://настройка lamp
ах, вам же для opensuse:
http://www.howtoforge.com/installing-nginx...n-opensuse-11.4
Вы лучше, если у вас что-то не получается, задавайте конкретные вопросы. Вам с гораздо большим удовольствием помогут.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
BigBrother
- Сообщения: 436
- Статус: ¯\_(ツ)_/¯
- ОС: linux based
Re: Хостинг на linux снуля
Не всегда! Есть как плюсы перед apache2(worker/event)+mod_php, так и минусы - например: отсутствие многопоточности, что заставит мирится с тем, что один процесс php-fpm сможет задействовать максимум только 1 ядро, или надо будет писать вручну многопоточный код.
Тут скорее от проекта зависит.
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Хостинг на linux снуля
Я с этим согласен, но, учитывая вопрос топикстартера, вряд ли там нечто серьёзное и сильно посещаемое. А для таких проектов апач, имхо, избытычен.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
Re: Хостинг на linux снуля
BigBrother писал(а): ↑18.03.2013 22:08отсутствие многопоточности, что заставит мирится с тем, что один процесс php-fpm сможет задействовать максимум только 1 ядро
Как будто mod_php из коробки многопоточный...
-
Ленивая Бестолочь
- Бывший модератор
- Сообщения: 2760
- ОС: Debian; gentoo
Re: Хостинг на linux снуля
BigBrother писал(а): ↑18.03.2013 22:08один процесс php-fpm сможет задействовать максимум только 1 ядро
я может чего-то не понимаю, но мне казалось fastcgi предполагает балансировку нагрузки между бэкендами на своём уровне. и неужели у вас такие скрипты на php, что одной копии мало одного ядра?
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
-
BigBrother
- Сообщения: 436
- Статус: ¯\_(ツ)_/¯
- ОС: linux based
Re: Хостинг на linux снуля
KiWi писал(а): ↑19.03.2013 01:01BigBrother писал(а): ↑18.03.2013 22:08отсутствие многопоточности, что заставит мирится с тем, что один процесс php-fpm сможет задействовать максимум только 1 ядро
Как будто mod_php из коробки многопоточный...
Если не ошибаюсь, mod_php встраивается в apache, который уже сам распределяет нагрузку на ядра с помощью Multi-Processing Modules (MPMs). Это как MySQL сервер, сам задейсвует доступные ядра... Главное, правильно его (apache) "приготовить".
Ленивая Бестолочь писал(а): ↑19.03.2013 09:26BigBrother писал(а): ↑18.03.2013 22:08один процесс php-fpm сможет задействовать максимум только 1 ядро
и неужели у вас такие скрипты на php, что одной копии мало одного ядра?
Предствьте себе - да. Проект нагруженный, Проц Intel® Xeon® CPU E5-2650 0 @ 2.00GHz на 32 ядра (таких серверов несколько, куда nginx балансирует php запросы) каждое из которых, переодически залипает на 10-20 минут, думаю в случее с апаче, такой проблемы не возникло.
-
Bluetooth
- Сообщения: 4395
- Статус: Блюзовый
- ОС: Debian Squeeze amd64
Re: Хостинг на linux снуля
Если не ошибаюсь, mod_php встраивается в apache, который уже сам распределяет нагрузку на ядра с помощью Multi-Processing Modules (MPMs). Это как MySQL сервер, сам задейсвует доступные ядра... Главное, правильно его (apache) "приготовить".
This Multi-Processing Module (MPM) implements a non-threaded, pre-forking web server that handles requests in a manner similar to Apache 1.3. It is appropriate for sites that need to avoid threading for compatibility with non-thread-safe libraries. It is also the best MPM for isolating each request, so that a problem with a single request will not affect any other.
или речь идет не о mpm-prefork?
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Хостинг на linux снуля
BigBrother
Есть threaded apache2-mpm-worker, но он не рекомендуется для использования с mod_php. Все остальные ( apache2-mpm-itk, apache2-mpm-prefork ) - non-threaded. Так что в этом плане у apache нет выигрыша.
Есть ещё apache2-mpm-event , но он вообще считается экспериментальным. Тут о продакшн использовании речь не идёт.
Есть threaded apache2-mpm-worker, но он не рекомендуется для использования с mod_php. Все остальные ( apache2-mpm-itk, apache2-mpm-prefork ) - non-threaded. Так что в этом плане у apache нет выигрыша.
Есть ещё apache2-mpm-event , но он вообще считается экспериментальным. Тут о продакшн использовании речь не идёт.
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
Ленивая Бестолочь
- Бывший модератор
- Сообщения: 2760
- ОС: Debian; gentoo
Re: Хостинг на linux снуля
Оу, окей.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
-
BigBrother
- Сообщения: 436
- Статус: ¯\_(ツ)_/¯
- ОС: linux based
Re: Хостинг на linux снуля
Я выше писал про woker или event, а про prefork ничего не говорил.
SLEDopit писал(а): ↑19.03.2013 16:50BigBrother
Есть threaded apache2-mpm-worker, но он не рекомендуется для использования с mod_php.
Откуда инфа?
SLEDopit писал(а): ↑19.03.2013 16:50BigBrother
Есть ещё apache2-mpm-event , но он вообще считается экспериментальным. Тут о продакшн использовании речь не идёт.
http://httpd.apache.org/docs/trunk/new_features_2_4.html
Код: Выделить всё
Event MPM
The Event MPM is no longer experimental but is now fully supported.-
Bluetooth
- Сообщения: 4395
- Статус: Блюзовый
- ОС: Debian Squeeze amd64
Re: Хостинг на linux снуля
Я выше писал про woker или event, а про prefork ничего не говорил.
Понял. А в примере, который Вы привели, там Вы заменили php-fpm на apache, там worker или event? и апач какой?
SLEDopit писал(а): ↑19.03.2013 16:50BigBrother
Есть ещё apache2-mpm-event , но он вообще считается экспериментальным. Тут о продакшн использовании речь не идёт.
http://httpd.apache.org/docs/trunk/new_features_2_4.html
Код: Выделить всё
Event MPM The Event MPM is no longer experimental but is now fully supported.
Еще не все догнали, что 2.4 уже вышел
Хороший вопрос. Вообще, мнение по поводу не рекомендуемости воркера с пхп очень расхожее и повторяется много где, но в официальной доке ничего про это сходу не нашел.Откуда инфа?
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Хостинг на linux снуля
Да хотя бы с того, что в дебиане испокон веков php компилят без поддержки worker'a. Неужто дураки?
BigBrother писал(а): ↑19.03.2013 17:43The Event MPM is no longer experimental but is now fully supported.
Код: Выделить всё
$ aptitude versions apache2-mpm-event
Package apache2-mpm-event:
p 2.2.16-6+squeeze10 stable 500
p 2.2.22-13 testing,unstable 500
>>>p 2.4.4-2 experimental 1 <<<UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
BigBrother
- Сообщения: 436
- Статус: ¯\_(ツ)_/¯
- ОС: linux based
Re: Хостинг на linux снуля
В даном случае не принципиально, можно и worker. Но, если захотят event, тогда версия апача должна быть >= 2.4. Лично мне больше нравится event.
Навернное из-за нынче модных nginx+phpfpm...
Ребята из apache, предложили сообществу три вида mpm. Почему debian не собирает apache2.4 - наверное вопрос к debian (хотя не только у них такая ситуация...).
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Хостинг на linux снуля
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
Bluetooth
- Сообщения: 4395
- Статус: Блюзовый
- ОС: Debian Squeeze amd64
Re: Хостинг на linux снуля
Да, видел это. А меня, честно говоря, озадачило, что про нерекомендуемость воркера с пхп не пишут в официальной доке.
-
SLEDopit
- Модератор
- Сообщения: 4824
- Статус: фанат консоли (=
- ОС: GNU/Debian, RHEL
Re: Хостинг на linux снуля
что?
Warning
We do not recommend using a threaded MPM in production with Apache 2. Use the prefork MPM, which is the default MPM with Apache 2.0 and 2.2. For information on why, read the related FAQ entry on using Apache2 with a threaded MPM
<..>
Note:
To build a multithreaded version of Apache, the target system must support threads. In this case, PHP should also be built with experimental Zend Thread Safety (ZTS). Under this configuration, not all extensions will be available. The recommended setup is to build Apache with the default prefork MPM-Module.
// http://php.net/manual/en/install.unix.apache2.php
Ну и собственно само объяснение:
Why shouldn't I use Apache2 with a threaded MPM in a production environment?
PHP is glue. It is the glue used to build cool web applications by sticking dozens of 3rd-party libraries together and making it all appear as one coherent entity through an intuitive and easy to learn language interface. The flexibility and power of PHP relies on the stability and robustness of the underlying platform. It needs a working OS, a working web server and working 3rd-party libraries to glue together. When any of these stop working PHP needs ways to identify the problems and fix them quickly. When you make the underlying framework more complex by not having completely separate execution threads, completely separate memory segments and a strong sandbox for each request to play in, further weaknesses are introduced into PHP's system.
If you want to use a threaded MPM, look at a FastCGI configuration where PHP is running in its own memory space.
// http://www.php.net/manual/en/faq.installat...llation.apache2
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
The more you believe you don't do mistakes, the more bugs are in your code.
-
Bluetooth
- Сообщения: 4395
- Статус: Блюзовый
- ОС: Debian Squeeze amd64
Re: Хостинг на linux снуля
SLEDopit писал(а): ↑20.03.2013 10:24что?
http://www.php.net/manual/en/faq.installat...llation.apache2
А, вот, я просто искал не там (:
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
Re: Хостинг на linux снуля
BigBrother писал(а): ↑19.03.2013 14:29Если не ошибаюсь, mod_php встраивается в apache, который уже сам распределяет нагрузку на ядра с помощью Multi-Processing Modules (MPMs). Это как MySQL сервер, сам задейсвует доступные ядра... Главное, правильно его (apache) "приготовить".
Это неправильное суждение о строении мира.
Apache, да, многопоточный. Но PHP из коробки однопоточный. Соответственно, для одного запроса -- весь код будет выполняться ровно на 1 ядре. И будет таким ровно до тех пор, пока в PHP-коде не будет какого-нибудь pcntl_fork(это первое, что пришло в голову, естестсвенно, речь тут не о многопоточности с точки зрения threadов, а о возможности исполнения на разных ядрах).
Соответственно, в плане выполнения PHP -- apache+mod_php ничем не отличаются от любого веб-сервера, умеющего fastcgi, с php-fpm(главное запускать пул не из одного процесса, а, например, таким же по размеру, как количество потоков/процессов apache для честного сравнения).
А mpm-event, судя по тому, что написано в документации -- это практически тот же mpm-worker вид сбоку: различия в том, как они работают с keepalive в первую очередь.
И все MPMы по сути работают одинаково: принимают запрос, отдают на обработку процессу/потоку, отдают ответ клиенту. И, да, в один момент времени одним соединением занимается один процесс/поток. И, да, разные соединения могут одновременно обрабатываться разными процессами/потоками, позволяя тем самым загрузить 1-2-5-10 ядер. Но это по сути ничем не отличается от поднятия пула php-fpmов, между которыми раскидываются все входящие соединения.
Спасибо сказали:
-
KiWi
- Бывший модератор
- Сообщения: 2521
- Статус: статус, статус, статус
Re: Хостинг на linux снуля
SLEDopit писал(а): ↑20.03.2013 10:24Warning
We do not recommend using a threaded MPM in production with Apache 2. Use the prefork MPM, which is the default MPM with Apache 2.0 and 2.2. For information on why, read the related FAQ entry on using Apache2 with a threaded MPM
<..>
Note:
To build a multithreaded version of Apache, the target system must support threads. In this case, PHP should also be built with experimental Zend Thread Safety (ZTS). Under this configuration, not all extensions will be available. The recommended setup is to build Apache with the default prefork MPM-Module.
// http://php.net/manual/en/install.unix.apache2.php
И переводится на русский это приблизительно так: мы не уверены, что у нас/используемых нами функции/либ/подключенных к PHP модулей, нет глобальных переменных общих для всех потоков.