Как наиболее оптимально настроить vps для одного сайта?
Я совсем неопытен в этом деле, прошу не придираться к вопросу и ответить полно, но просто, спасибо.
- сайт на джумла, не знаю как правильно характеризовать ресурсоёмкость сайта- поэтому напишу так-
одна страница(все посещения на ней) - это пхп файл весом в ~300килобайт (при каждой загрузке страницы простой коннект к базе данных(только селект), но сама база большая(таблица из которой идёт селект порядка 200к строк) и дальше используется вывод этих данных)
Задача выдержать ~100к посетителей в день,
имеется vps(если для такого количество не хватит этих ресурсов, напишите пожалуйста как будет лучше):
виртаулизация xen
CPU 4x2.8Ghz
RAM 4096 Мб
это SSD
сеть - 100 мбит/c
В выбранном хостинге предлагается сразу установленная ispmanager 4 lite (по желанию)
Теперь что я знаю:
vps/vds - одно и то же, вроде имеет значение виртуализация, т.е. openVS - на программном уровне, а kvm - на аппаратном, про xen не знаю, (1) что лучше, если выбирать тип виртуализации?
(2) какой дистрибутив linux лучше выбрать? в чём вообще разница между ними? (centos, debian..) читал что centos лучше(опять же не знаю почему, очень интересно- вроде больше функций, а каких? как это применяется- ведь это всё linux, т.е. везде одна и та же консоль, но в разных как я понимаю команды присутствуют разные или как? - наверное этот вопрос максимально характеризует мой уровень знаний по данной теме)
про панели управления прочитал несколько статей и вот что понял- ispmanager(который мне бесплатно предлагается, но 4 версии, когда уже есть 5, наверное даже если выбрать его, то лучше купить 5), cpanel и прочие рассчитаны на продавцов услуг хостинга, т.е. там присутствуют ненужны функции, которые вроде бы создают лишнюю нагрузку на сервер. но зато с isp всё очень просто
в какой-то статье автор предлагал использовать vesta, потому что она "лёгкая" (в сравнении с упомянутыми выше), но в других указывается что она сырая и недоделанная.
напомню- что мне главное выдержать 100к, и максимально эффективно расходовать ресурсы
написал это потому что в комментариях часто пишут что лучше всего - самому через консоль всё настроить.
если я узнаю как правильно это сделать, то этим займусь, вот что мне нужно:
почтовые аккаунты(+ для отправки почты буду использовать mailgun (это такой сервис для больших объёмов) - но я ещё не успел пока изучить этот вопрос, так как для начала хочу просто поставить свой сайт на vps)
прикрутить домен
соответственно фтп
ssl
cron
curl
php 5.5
phpmyadmin(кстати напишу про mysql сразу, что где-то читал что лучше поставить какой-то аналог- вроде mirandabd, не уверен в названии, и толком ничего не знаю, (3) проконсультируйте и по этому вопросу пожалуйста)
внешний mysql доступ
>(4) так что лучше всего подойдёт? (какая-то определённая панель или разобраться самому, нужно ли будет потом следить за этим всем, если делать самому?)
>где-то читал что лучше поставить какой-то аналог- вроде mirandabd,
Может MariaDB ? Это форк mysql, его ведут оригинальные разработчики mysql, после приобретения последнего компанией oracle. MariaDB это свободное ПО, а вот с MySQL нихера не понятно. Разницы что ставить особо нет и то и другое будет нормально работать.
xfg: да, спасибо) а что ты можешь сказать по поводу панелей управления? и про линукс дистрибутив.. а с виртуализацией я думаю это не так важно, хотя пишут что ксен это зе бест
Сложно ответить что-то внятно, потому что вопрос = поток сознания, уровень подготовки вопрошающего слишком низок для того, чтобы самому настраивать и админить сервак. Ничего личного, не обижайтесь, но лучше обратитесь к специалисту. Потому что между вашим текущим состоянием и уровнем даже начинающего админа, способного самостоятельно все это сделать "по уму" - не менее 200-300 часов обучения и практики.
По сути - мощности железа данного сервера достаточно для 100к в день. При грамотном использовании кеширования 100к в день выдержит без проблем и сервак с 1м ядром и 1Гб оперативы.
хорошо, но ответьте тогда пожалуйста что бы выбрали вы в качестве дистрибутива линукс и из панелей управления (или вы для одного сайта сделали бы это без панели, а сами в терминале?)
somethinginterest: панель никакую, ибо они бестолковы. Для оптимальной скорости нужны кастомные сборки или как минимум кастомные конфиги. Панели как правило привязаны к старым версиям и обновляются очень неспешно. Кроме того, панель жрет ресурсы. Для одного сайта в панели нет никакого смысла. По дистрибутиву - я юзаю убунту (14.04), для вас она, пожалуй, тоже будет наиболее комфортной для вхождения в эту сферу - инфы и уроков в сети масса. В целом, какая ось - не важно. Важно как она настроена.
В чем собственно вопрос? Вы хотите, что бы вам подробно расписали настройку и оптимизацию веб- сервера? Советую вам смотреть в сторону Nginx + PHPfpm с APC + MariaDB + Memcached + Google. Из дистрибутивов рекомендую Debian или Ubuntu, оба дистрибутива отлично подходят для новичков.
Phpmyadmin - штука конечно удобная, но ресурсы тоже кушает. Советую попробовать Navicat.
VPS'ка выдержит гораздо большую нагрузку, при грамотной настройке и оптимизации.
Будут конкретные вопросы по настройке - задавайте.
Ух какой поток неструктуированных мыслей!
Почему выбрана xen виртуализация?, почему машинка именно такой конфигурации и откуда данные о 100к посетитетелей, а также правильно ли я понял, что каждый кто будет заправшивать таблицу будет запускать выборку из таблицы с 200к записей?
Если сможете ответить на эти вопросы более-менее внятно, тогда еще можно что-то посоветовать, а так, уж извиняйте, гугль в помощь =)
>Почему выбрана xen виртуализация?, почему машинка именно такой конфигурации
скорее был выбран хостинг, это максимальная опция по vps, но я написал в скобках, что если это не подходит- то выберу то, что нужно
>откуда данные о 100к посетитетелей
это аналог apidog(если не знаете- это сайт на api vk) со своими фичами, 100к в проекте за несколько месяцев, в первые недели будет 10-20, но хочу сразу сделать как следует
>а также правильно ли я понял, что каждый кто будет заправшивать таблицу будет запускать выборку из таблицы с 200к записей?
да, я также слаб в вопросах оптимизации, но сейчас сам осмыслил и наверное это очень неправильно
значит буду раздавать куки, а выборка только при авторизации (/-новый вопрос-/ ведь это гораздо лучше, да?)
>Если сможете ответить на эти вопросы более-менее внятно
спрашивайте, я всё уточню
>Ух какой поток неструктуированных мыслей!
написал всё так как думаю, то есть как бы объяснял другу
буду стараться структурировать)
Шаред хостинг или все же выделенный виртуальный сервер? а то я уже чуток запутался в Ваших комментах!
Почему был выбран "хостинг" с xen виртуализацией, а не OVZ или KVM,а может быть HyperV или VmWare решения?
Это к размышлению вопрос был!
Далее...
100к - это только предположение или реальные цифры Вашего проекта?
По поводу 200к записей из таблицы... Тут вопрос не в оптимизации, а в архитектуре базы данных!!!
Судя по тому что и как Вы пишите и прыгаете с базы на куки, то можно смело предположить что далеко Вам еще до выделенного сервера и собственного сервиса. Если сможете показать сервис с 100к униками в день, возьму свои слова обратно! =)
Вопрос тут был не в том чтобы у Вас спрашивать, а чтобы Вы спрашивали! НО!!! Вопросы должны быть не из серии "хочу чтобы все работало и все давайте мне помогайте", а из серии как оптимизировать select из двух таблиц с inner join!
Вы уж не обижайтесь, но Вам явно рано еще что-то в продакшн запускать! =)
Anton Zheltyshev: vps выделенный виртуальный сервер. я задал конкретные вопросы и дело не в моём конкретном случае, а отталкиваемся от заданных параметров, которые я указал.
>Почему был выбран "хостинг" с xen виртуализацией, а не OVZ или KVM,а может быть HyperV или VmWare решения?
смотрите мой первый вопрос (1)
перефразирую - почему следует выбирать ту или иную виртуализацию?
>Судя по тому что и как Вы пишите и прыгаете с базы на куки, то можно смело предположить что далеко Вам еще до выделенного сервера и собственного сервиса
я задал вопрос, если уж вы отвечаете, то отвечайте по существу
и сразу спросил в комментарии >(/-новый вопрос-/ ведь это гораздо лучше, да?), потому что не знаю
а если бы знал то соответственно не задавал эти вопросы
надеюсь вы перестанете шутить и адекватно ответите
По поводу "документации ответ не понял"!
Чувствуется что даже не потрудились посмотреть банальные различия технологий виртуализации в том же гугле, а уже собрались писать супер-пупер HA сервис =) ух, куда мир катится!!!
Основы Вам придется постигать самому, инфы в сети полным-полно!
По внятного ответа на Вашу кучку вопросов я уже дал Вам комментарий.
Цитирование-->
"Если сможете ответить на эти вопросы более-менее внятно, тогда еще можно что-то посоветовать, а так, уж извиняйте, гугль в помощь =)"
Так что учите мат.часть (google.com в помощь) и пишите вопросы более конкретные, либо это явно не Ваша тема!
Anton Zheltyshev: не кипятись дружище, я никого не пытаюсь обидеть
>По поводу "документации ответ не понял"!
я тебе написал что тебе следует посмотреть комментарии к моему вопросу, потому что в них пользователь с ником xfg xfg уже обратил на это внимание
>Чувствуется что даже не потрудились посмотреть банальные различия технологий виртуализации в том же гугле
посмотрел и понял, но вопрос заключался в том какой лучше для заданных параметров
>а уже собрались писать супер-пупер HA сервис =) ух, куда мир катится!!!
вопрос был не про мой сервис, а про впс
вместо показательного превосходства по своему опыту и знанием и критикованием моих незнаний уже могли бы при желании достойно ответить мне, вместо всей этой кучи бесполезной переписки
>Если сможете ответить на эти вопросы более-менее внятно
каждый свой ответ я даю более чем внятно
да, соответственно я прямо сейчас параллельно разбираюсь сам в поисковике, но всё же хочется услышать ответ по лично моим вопросам от знающих людей
Понимаете ли в чем проблема. Не люблю я ленивых =) Когда человек изучил информацию по предмету, то это сразу видно! У Вас же только поверхностная информация (именно информация, не знания) во всех областях, которые были затронуты в Вашем посте. Увы. Но либо Вы задаете вопросы по делу, а не кашу букв и цифр, либо ждете ответа кого-то, кому не жалко потратить на Вас время и расписать все, либо Вы все же берете свою голову, руки и идете изучать материал! Вот если уже после изучения вопроса у Вас возникнут вопросы, то можете смело писать, хоть сюда, хоть мне! =)