forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Общее (http://forum.boolean.name/forumdisplay.php?f=139)
-   -   Свой вэб сервер (http://forum.boolean.name/showthread.php?t=17964)

pax 04.03.2013 17:13

Свой вэб сервер
 
Привет всем, такая задача:
1. Выбрать OS для web сервера (выбираю сейчас между CentOS 6.3 и Debian 6). После аренды сервера будет установлен минимальный дистрибутив с SSH.
2. На сервере надо PHP 5.3 с поддержкой PDO MySql (nginx или apache посоветуйте).
3. Поставить на сервер какую-то панель управления сервером (присмотрел вот такую http://ajenti.org/ но может хватит и webmin).
4. Нужна статистика (что-то типа munin).
5. Вероятно сразу закрыть какие-то дыры.
6. Настроить резервное копирование php и mysql баз.

Посоветуйте хороший мануал по всему что в списке при том что я с башем почти не работал. Советы приветствуются!

Заранее спасибо!

PS: сервер будет железный (вероятнее всего этот).

ABTOMAT 04.03.2013 20:30

Ответ: Свой вэб сервер
 
1. Бери Debian или, ещё лучше, Ubuntu Server.

Сейчас, конечно, набигут труЪ-линуксоиды и скажут, что Ubuntu для нубов, но я пользуюсь лишь прагматическими соображениями. По моему опыту нескольких лет, на CentOS вечно приходится делать "сложно" (этого пакета нет, того пакета нет, там репозитория не хватает, здесь щячло карпа из исходников компиль!), когда ту же задачу на Ubuntu решить получается "просто" (в большинстве случаев решается apt-get'ом без изъёбов). И когда у меня на работе встаёт задача сделать что-то, я хочу потратить на это как можно меньше времени, а не чтобы было труЪшно. А ещё у Ubunt'ы коммьюнити, документации и мануалов больше, чем у чего-либо иного. У меня Ubuntu работает на двух серверах и я очень бы хотел перевести на неё оставшиеся два.

2. ngnix ИЛИ apache — вопрос неправильный, они для разных целей предназначены. Базово тебе нужен только apache. Кроме того, если собрался юзать nginx, будут трудности с коннектом его к панели управления хостингом, так как многие из них об nginx'е ничего не знают. nginx — это наша, русская потеха, на Западе он довольно незаслуженно неизвестен. Поэтому при выборе панели управления хостингом поинтересуйся, как она дружит с nginx (если он тебе нужен, опять же). Ну, вообще говоря все панели так или иначе базируются на apache, в котором конфиги стандартны. И в любом случае его можно будет законфижить для работы с nginx. Но это нетривиальная задача, и будет мало толку, если панель будет генерить только конфиги для apache, а для nginx придётся отдельно. Так что лучше если панель и правда поддерживает (или энтузиасты сделали соотв. моды). Если тебе нужна панель, то обычно вместе с ней и ставится всё ПО для веб-сервера.

3. Тут могу сказать только то, что юзал:
  • cPanel. Очень круто, моя любимая. Но, к сожалению, лицензия стоит недёшево (дороже чем некоторые VPS).
  • Plesk. Параша. Полный отстой, интерфейс говно и функционал куц. Лучше вообще без панели, чем это УГ. Имел несчастье заставлять её работать с nginx (успешно, но говна, конечно, покушал).
  • Parallels. Тоже дерьмо. И, вроде, от тех же авторов, что Plesk.
  • EHCP. Бесплатно, простенько. Хотя местами и сыровато. После обработки напильником вполне норм.
  • Webmin — работал мало, но в целом положительные впечатления. Бесплатно.
  • Без панели. Юзаю на двух серверах, батя грит малаца. Если новый сайт раз в полгода — зачем вообще панель? (за хорошую, а действительно хорошей я могу назвать только cPanel, ещё и платить надо ежемесячно). Ладно, есть случаи, когда надо (например, реселлинг), но я-то таким не занимаюсь жи.

4. NewRelic хвалят. Хотя сам не юзал, врать не буду.

5. Смишной пункт. Вообще смишной. Все известные дыры уже в софте давно пофикшены. А где в будущем будет дыряво — заранее не узнаешь. А, кстати, бОльшая часть дыр как раз не в серверном ПО, а в сайтах авторов-криворучек, а также в давно не обновлённых версиях популярных CMS. Так что тут могу только посоветовать простое правило: заюзал открытый движок для сайта — взял на себя ответственность его регулярно обновлять.

6. bash-скрипты + cron + ручки. Ну, наверное, и готовые решения есть.

Железный? А тебе оно надо? Можешь назвать хотя бы пару аргументов, почему нужен железный, а не виртуальный? Или это чисто эмоциональное решение? Не будь поехавшим, бери VPS. Всё то же самое, только дешевле. И в любой момент можно проапгрейдить виртуальные железки, если необходимо.

pax 04.03.2013 21:38

Ответ: Свой вэб сервер
 
Я планирую запустить на нем сервер для игры в соц сети, думаешь виртуальный сможет справится с нагрузкой порядка 50к-100к DAU?

ABTOMAT 04.03.2013 23:05

Ответ: Свой вэб сервер
 
Они же различаются по мощности. Бывают самые разные: от пердаков за $7/мес для 5 сайтов на вордпрессе до виртуальных машин, которые в реальности обслуживаются десятками железных серверов. Выбирай какой нужен.

pax 04.03.2013 23:31

Ответ: Свой вэб сервер
 
А можно пример виртуального сервера нормального? И буду признателен за совет где арендовать.

ABTOMAT 04.03.2013 23:47

Ответ: Свой вэб сервер
 
http://vps.net/cloud-servers/linux-vps
На работе вот тут хостимся. Тут можно выбирать мощность виртуального сервера дискретно с шагом 1.2 ГГц, 512Гб памяти, 10Гб винта.
На 10 нодах это будет 12ГГц процессора и 50 гигов памяти — найдёшь такой же "железный" ? Это, кстати, можно переключать в реальном времени, без даунтайма (набижали игроки - увеличил, убижали - понизил, хотя скорее всего 1-й ноды тебе хватит с запасом).

http://mediatemple.net/webhosting/dv/
Тут на работе второй сервер. Правда, тут Plesk и дороже и вроде смена конфигурации только с перезагрузкой, но люди грят что стабильней (хз на самом деле, на своём опыте одинаково).

http://aws.amazon.com/ec2/
А вот тут впсик с 600 мб оперативы и вовсе дают бесплатно сроком на год (а после будет $15/мес), на данный момент там у меня слоновый сайт хостится весьма недурно.

pax 04.03.2013 23:54

Ответ: Свой вэб сервер
 
К сожалению масштабируемые серверы дороговато...

ABTOMAT 05.03.2013 00:05

Ответ: Свой вэб сервер
 
Ну у тебя есть основания считать, что тебе нужен выделенный сервер за 56 евро/мес, когда с головой хватает и vps за 20 евро/мес?

pax 05.03.2013 01:09

Ответ: Свой вэб сервер
 
Я не очень разбираюсь в нагрузке, но вероятно может и хватить VPS. Тогда такой вопрос: на какую нагрузку хватит вот такого VPS сервера?
http://www.hetzner.de/en/hosting/produkte_vserver/vq19

Условия: сервер обрабатывает запросы через php + PDO + MySql и служит для хранения и обработки данных игроков игры в соц сети.

ABTOMAT 05.03.2013 04:24

Ответ: Свой вэб сервер
 
Цитата:

сервер обрабатывает запросы через php + PDO + MySql
Это сервер игры или это сайт будет делать? Сколько раз в единицу времени это будет происходить? Насколько сложны запросы?
Цитата:

игроков игры
Там будет сервер игры Сапёр? Крусис? Eve Online? World of Warcraft? Counter-Strike? Doom 1? А человек будет 5? 10? 100000?

Сейчас, экстрасенсам позвоню в отпуск и узнаю.

Раз ты такой неопределённый, то забудь что я писал, бери железный сервер, самый толстый и дорогой, чтоб наверняка хватило. Помни, что единожды взяв VPS, ты до конца дней своих будешь вынужден сидеть только на нём, не могя переехать на другой или поменять что-то в конфигурации, так что бери железный самый дорогой и большой. Главное чтоб подороже.

pax 05.03.2013 07:33

Ответ: Свой вэб сервер
 
Цитата:

Сообщение от ABTOMAT (Сообщение 254211)
Это сервер игры или это сайт будет делать? Сколько раз в единицу времени это будет происходить? Насколько сложны запросы?
Там будет сервер игры Сапёр? Крусис? Eve Online? World of Warcraft? Counter-Strike? Doom 1? А человек будет 5? 10? 100000?

Сервер для игры про роботов из треда проектов. Запрос представляет собой POST, получающий в ответ JSON, часть данных которого в другом JSON результате закодирована base64 и передана как строковый параметр основного JSON ответа. Запросов будет в худшем случае от каждого пользователя для примера два-три раза в минуту. И допустим DAU будет 100к. Запрос выполняет максимум порядка 2-6 sql запросов к базе MySql. Сложность некоторых запросов порядка джойнов 3-х таблиц или каждый может иметь синтаксис INSERT ... ON DUPLICATE KEY UPDATE ...

Этой информации достаточно чтобы дать нормальный ответ, а не следующее?

Цитата:

Сообщение от ABTOMAT (Сообщение 254211)
Сейчас, экстрасенсам позвоню в отпуск и узнаю.

Раз ты такой неопределённый, то забудь что я писал, бери железный сервер, самый толстый и дорогой, чтоб наверняка хватило. Помни, что единожды взяв VPS, ты до конца дней своих будешь вынужден сидеть только на нём, не могя переехать на другой или поменять что-то в конфигурации, так что бери железный самый дорогой и большой. Главное чтоб подороже.

Чем вызван такой ответ? Как будто я начал тебя раздражать.


UPD: поправил частоту запросов. Их будет 2-3 в минуту максимум от игрока.

Randomize 05.03.2013 09:46

Ответ: Свой вэб сервер
 
Вот я не понимаю зачем тебе железный веб сервер?

Цитата:

php + PDO + MySql
Сия троица работает на моём роутере (Ralink SoC 384 MHz , 32mb ram) например.
Проводил тесты. ~30 клиентов долбящих INSERT, UPDATE, SELECT, DELETE за 1 запрос раз в секунду. Через 10 минут забивают рам напрочь. А процессору пофигу. Да да, вот такого калькулятора "некомпьютера" и в принципе днища хватает на 20+ поциентов. При 30 просто сразу рам забивают порождённые процессы php и mysql.

Бери VPS с 512 оперативы и хотяб 1гхз. Хватит слихвой при 50-100 поцыках. Даже в кубач с братюнями играть можно будет (правда примерно 5-10 братюнь всего выйдет, но кубач ваще как говно работает)
Ваще лаги сервера побеждает не железо, а код.
Если начнёт прям тормозить жёстко - пляшишь с профиллером и оптимизируешь - экономишь на раме.

Как писал автомат бери VPS с ubuntu и ставь на него LAMP. Если у тебя там будет только игра то и NGINX те не нужен совсем. Он только для статики годится.


Часовой пояс GMT +4, время: 10:42.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot