Хостинг на linux снуля (Маны)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

leksstav
Сообщения: 331

Хостинг на linux снуля

Сообщение leksstav »

Всех приветствую !

Прошу поделиться ссылками на мануалы, и видеоуроки по настройке хостинга.
apache+php+mysql
Желательно пошаговый мануал.
Если будет opensuse то вообще прекрасно.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21359
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Хостинг на linux снуля

Сообщение Bizdelnick »

Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
leksstav
Сообщения: 331

Re: Хостинг на linux снуля

Сообщение leksstav »




Спасибо, Bizdelnick.
Есть что то желательно на русском ?
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Хостинг на linux снуля

Сообщение SLEDopit »

leksstav писал(а):
18.03.2013 15:17
видеоуроки
видеоуроки - зло! то, на что вы потратите 5 минут чтения, вас придётся 20 минут смотреть. ещё и найти нужный кусок проблематично.
leksstav писал(а):
18.03.2013 15:17
apache+php+mysql
посмотрите хотя бы на связку nginx + apache (а лучше nginx + php-fpm).
leksstav писал(а):
18.03.2013 15:17
ссылками на мануалы
Вас в гугле забанили?
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.
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Хостинг на linux снуля

Сообщение BigBrother »

SLEDopit писал(а):
18.03.2013 15:29
(а лучше nginx + php-fpm).

Не всегда! Есть как плюсы перед apache2(worker/event)+mod_php, так и минусы - например: отсутствие многопоточности, что заставит мирится с тем, что один процесс php-fpm сможет задействовать максимум только 1 ядро, или надо будет писать вручну многопоточный код.
Тут скорее от проекта зависит.
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Хостинг на linux снуля

Сообщение SLEDopit »

BigBrother писал(а):
18.03.2013 22:08
Тут скорее от проекта зависит.
Я с этим согласен, но, учитывая вопрос топикстартера, вряд ли там нечто серьёзное и сильно посещаемое. А для таких проектов апач, имхо, избытычен.
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.
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Хостинг на linux снуля

Сообщение KiWi »

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 снуля

Сообщение BigBrother »

KiWi писал(а):
19.03.2013 01:01
BigBrother писал(а):
18.03.2013 22:08
отсутствие многопоточности, что заставит мирится с тем, что один процесс php-fpm сможет задействовать максимум только 1 ядро

Как будто mod_php из коробки многопоточный...

Если не ошибаюсь, mod_php встраивается в apache, который уже сам распределяет нагрузку на ядра с помощью Multi-Processing Modules (MPMs). Это как MySQL сервер, сам задейсвует доступные ядра... Главное, правильно его (apache) "приготовить".

Ленивая Бестолочь писал(а):
19.03.2013 09:26
BigBrother писал(а):
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 снуля

Сообщение Bluetooth »

Если не ошибаюсь, 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 снуля

Сообщение SLEDopit »

BigBrother
Есть 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.
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Хостинг на linux снуля

Сообщение Ленивая Бестолочь »

BigBrother писал(а):
19.03.2013 14:29
Предствьте себе - да.

Оу, окей.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Хостинг на linux снуля

Сообщение BigBrother »

Bluetooth писал(а):
19.03.2013 15:37
или речь идет не о mpm-prefork?

Я выше писал про woker или event, а про prefork ничего не говорил.

SLEDopit писал(а):
19.03.2013 16:50
BigBrother
Есть threaded apache2-mpm-worker, но он не рекомендуется для использования с mod_php.

Откуда инфа?

SLEDopit писал(а):
19.03.2013 16:50
BigBrother
Есть ещё 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 снуля

Сообщение Bluetooth »

Я выше писал про woker или event, а про prefork ничего не говорил.

Понял. А в примере, который Вы привели, там Вы заменили php-fpm на apache, там worker или event? и апач какой?

SLEDopit писал(а):
19.03.2013 16:50
BigBrother
Есть ещё 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 снуля

Сообщение SLEDopit »

BigBrother писал(а):
19.03.2013 17:43
Откуда инфа?
Да хотя бы с того, что в дебиане испокон веков php компилят без поддержки worker'a. Неужто дураки?

BigBrother писал(а):
19.03.2013 17:43
The 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.
Спасибо сказали:
BigBrother
Сообщения: 436
Статус: ¯\_(ツ)_/¯
ОС: linux based

Re: Хостинг на linux снуля

Сообщение BigBrother »

Bluetooth писал(а):
19.03.2013 17:55
Я выше писал про woker или event, а про prefork ничего не говорил.

Понял. А в примере, который Вы привели, там Вы заменили php-fpm на apache, там worker или event? и апач какой?

В даном случае не принципиально, можно и worker. Но, если захотят event, тогда версия апача должна быть >= 2.4. Лично мне больше нравится event.

Bluetooth писал(а):
19.03.2013 17:55
Еще не все догнали, что 2.4 уже вышел :)

Навернное из-за нынче модных nginx+phpfpm...

SLEDopit писал(а):
19.03.2013 18:16
BigBrother писал(а):
19.03.2013 17:43
Откуда инфа?
Да хотя бы с того, что в дебиане испокон веков php компилят без поддержки worker'a. Неужто дураки?

Ребята из apache, предложили сообществу три вида mpm. Почему debian не собирает apache2.4 - наверное вопрос к debian (хотя не только у них такая ситуация...).
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Хостинг на linux снуля

Сообщение SLEDopit »

BigBrother
Ладно, отбросим троллинг: вот.
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.
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Хостинг на linux снуля

Сообщение Bluetooth »

SLEDopit писал(а):
19.03.2013 18:22
BigBrother
Ладно, отбросим троллинг: вот.

Да, видел это. А меня, честно говоря, озадачило, что про нерекомендуемость воркера с пхп не пишут в официальной доке.
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Хостинг на linux снуля

Сообщение SLEDopit »

Bluetooth писал(а):
20.03.2013 02:04
про нерекомендуемость воркера с пхп не пишут в официальной доке.
что?
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.
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Хостинг на linux снуля

Сообщение Bluetooth »

SLEDopit писал(а):
20.03.2013 10:24
Bluetooth писал(а):
20.03.2013 02:04
про нерекомендуемость воркера с пхп не пишут в официальной доке.
что?
http://www.php.net/manual/en/faq.installat...llation.apache2

А, вот, я просто искал не там (:
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Хостинг на linux снуля

Сообщение KiWi »

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 снуля

Сообщение KiWi »

SLEDopit писал(а):
20.03.2013 10:24
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


И переводится на русский это приблизительно так: мы не уверены, что у нас/используемых нами функции/либ/подключенных к PHP модулей, нет глобальных переменных общих для всех потоков.
Спасибо сказали: