Говорите рано? А не будет ли потом поздно? Лучше сейчас чем никогда! Думаю многие согласятся.
Прежде, чем делать плохо научитесь сначала делать хорошо! (с) Шеф
Если выходите на рынок, то нужно сразу задать определенную планку и ее держать. Так уж получилось, что в любом бизнесе большая конкуренция и если вы изначально не зададите правильный вектор развития, то огромные волки вас просто раздавят. Нужно изначально делать все качественно и красиво, а не на от$%^#сь, ибо конкуренция. Имидж уронить очень легко, а вернуть его после этого, иногда, невозможно.
Так уж получилось, что вы - далекоооо не первооткрыватели. Игровой хостинг зародился более 10 лет назад и база знаний по этому виду деятельности, довольно, огромная. Прежде чем влезать в бизнес, стоит его изучить, ибо цена ошибки - это дальнейшее ваше существование. А из-за ошибок загибались не только мелкие хостеры, но и акулы рынка. За примером далеко ходить не надо - Game-Hosting, ForTeam, DGH, Serva4ok. Это были хостеры с приличным парком машин и огромной перспективой.
Даже мы с другом, в свое время, пробовали заниматься хостингом игровых серверов. Почему его сейчас нет - это другой вопрос, но не исключено, что у меня на проекте появится подобного вида сервис.
может мне кто-то объяснит целесообразность использовать разные айпи на одном сервере?
очередное заявление про айпи, а смысл я так и не понял
Они имеют ввиду несколько локаций. Тоесть машин, которые разделяются характеристиками. Несколько айпи, имеется ввиду то, что для ксго 1 локация 1 айпи, и другой айпи, под другие локации, других игр.
Эх... Хотел я запилить статью о разных тарифах со стороны хостера и вообще описать принцип работы хостера, да что-то как-то руки не дошли... Сколько там, года 2 прошло с описания тарифов?
Попробую подробнее ответить, с описанием, к чему небольшая ошибка может привезти. Может кому-то пригодится.
Нет, нет и еще раз нет. Зависимость IP-адреса от локации примерно такая же, как и колеса от транспортного сердства.
Нет, надо еще проще... Сначала пройдемся по понятиям.
Локация - это место физического размещения серверов, по-другому - Дата-Центр (ДЦ), в котором размещены серверы.
На одной локации может быть сколько угодно физических серверов (в пределах возможности кошелька и машинного зала), а про количество IP-адресов - вообще молчу.
IP-адрес - это уникальный сетевой идентификатор компьютера или сетевого устройства (сервер относится к компьютерам).
На одном физическом сервере может быть несколько IP-адресов. Их можно прицепить хоть 10, хоть 20 и т.д.
Теперь чуть более детально.
Так уж случилось, что мощность железа сервера не резиновая, а IP-адрес не умеет работать сразу на несколько машин. Нет, можно сделать колхоз через циску (прокси) и транслировать сервисы с нескольких железных серверов на 1 IP, разбив сервисы по портам, но стоит ли это того при цене одного адреса максимум в 100р. в месяц?
Мощность ограничивается, как минимум - процессором и оперативной памятью. Пропускную способность шин и скорость работы SSD/HDD и RAID мы пока опустим, хотя для некоторых игр это тоже очень важно.
Что-то опять начинаю усложнять.
Иными простыми словами 1 IP-адрес = 1 сервер (физический или виртуальный - не суть важно), но 1 сервер ≠ 1 IP-адрес
Игровой сервер, с точки зрения операционной системы -
это сервис, который работает на заранее выбранном IP-адресе и на определенном порту. И на одном IP-адресе может работать огромное количество сервисов одновременно, если мощности вашего оборудования для этого хватит. Думаю, с пониманием этого проблем тоже ни у кого не возникало.
А вот дальше начинается специфика игровых серверов.
Игровой сервер в любой игре, фактически, привязан к определенному СТАТИЧЕСКОМУ ВНЕШНЕМУ IP-адресу и порту. Почему привязан? Игроки сохраняют игровой сервер у себя в клиентах именно в виде IP:Port, владельцы игровых серверов рекламят и раскручивают именно IP:Port, плагины некоторые (не только ксс/ксго) привязываются именно к IP:Port и т.д.
Да, можно создать игровой сервер и на динамическом адресе, но это не наш случай.
Теперь некоторая специфика хостинга.
Вернемся немного выше и вспомним, что физический сервер вещь не резиновая и не умеет раздуваться до неограниченной мощности. Да, есть платформы, которые умеют работать с несколькими процессорами, но у этих платформ несколько иные задачи и под работу с игровыми серверами они не совсем подходят, а те, что хоть как-то подходят - один процессор в такую платформу будет стоить, как весь ваш сервер на i7-8700, если не больше...
Лишний раз напомню, что Source-сервер (раз это приоритетное направление) не умеет в многоядерность и является 32-разрядным сервисом, т.е. не может потреблять более 3,5-4Гб оперативной памяти.
Далее, потребление ресурсов физического сервера игровым складывается из 2 факторов:
1. Затраты ресурсов на запуск и работу ПУСТОГО игрового сервера
2. Затраты ресурсов на обработку каждого подключенного к игровому серверу игрока.
Первый съедает определенное количество оперативной памяти (обычно от 200 до 500Мб в зависимости от игры и нагруженности плагинами) и создает некоторую нагрузку на процессор в момент запуска.
А вот во-втором случае добавляется еще и количество данных, которое сервер должен обработать для синхронизации игроков (тикрейт). И все это умножается на количество игроков на данный момент на сервере.
Иными, более простыми словами -
Пустой сервер не создает нагрузки на физический сервер, кроме потребления некоторой базовой величины оперативной памяти и не важно - 10 слотов пустых или 64.
И вот, примерно, с этого момента у начинающего хостера или администратора проекта может сложиться ложное впечатление, что его оборудование по мощности - минимум ЦУП Роскосмоса. Почему? Он создал 10 серверов по 64 слота, а нагрузка всего-то пара % на процессор и 5Гб оперативной памяти из 32 или 64Гб. Это ж сколько еще наплодить можно серверов и продать их! В момент этого ложного впечатления у людей прям видно доллары вместо зрачков и читаются фраза "Я ПОБЕДИЛ ЭТУ ЖИЗНЬ!", "Да что ж я раньше этим не занимался?! ЭТО Ж ЗОЛОТАЯ ЖИЛА!", "Да я еще и цены опущу, чтоб у меня дешевле было и все ко мне перешли!" но...
... Но все меняется, когда на игровые серверы приходят люди...
Арендаторам же не интересно смотреть на пустые слоты? Они начинают развивать свои проекты, приглашают друзей, тратятся на продвижение и раскрутку.
Нагрузка начинает расти в геометрической прогрессии и возможность процессора вдруг резко заканчивается. В этот момент глаза владельца оборудования начинают быстро тускнеть, ибо приходит осознание всего этого пи#$%ца.
И вот на этом этапе большинство начинающих владельцев хостингов тупо прячутся под одеяло и боятся нос оттуда показать... Почему? Все серверы начинают резко лагать, недовольные администраторы игровых серверов заваливают техподдержку тоннами гневных писем с требованием разобраться или вернуть потраченные средства. А что возвращать, если на этапе эйфории от супер-пупер мощной железяки все деньги были потрачены на продление аренды физического сервера или, еще хуже, на пиво/мороженое? Админы хостеров тупо сливаются, а тут в теме про мошенников мы очередной раз под пиво с орешками читаем печальные посты от людей, которых кинули.
И вот именно к этому этапу и подводил весь текст выше.
Допустим, в этой ситуации вы оказались ответственным владельцем хостера и решили решить проблему, чтобы не упасть в глазах потребителей. В этот же момент вам приходит осознание того, что демпинг рынка с ценами ниже акул бизнеса было не самой лучшей идеей...
Итак, у вас бешеная нагрузка и у вас есть 2 варианта дальнейших действий:
1. Увеличить мощность вашего сервера
2. Взять в аренду или купить второй физический сервер и разделить нагрузку на 2 сервера
В принципе, в некоторых случаях оба варианта являются рабочими, особенно, если проблема в недостатке оперативной памяти. А что если забит процессор? Но процессор и так чуть ли не самый мощный из предложенных. Поставить 2 и более процессоров? Либо нет возможности, т.к. у десктопных процессоров и Xeonах начального уровня заблокирована возможность работать в многосокетных системах, либо цена аренды будет просто космическая за платформу на Xeon E5 с, хотя бы, приближенными параметрами по частоте. Остается только один выход - арендуем вторую железку и раскидываем нагрузку на 2 сервера.
И вот в этот момент вам приходит осознание того, что в самом начале вы пожалели лишние 100-200-300 рублей в месяц и этим умудрились забить сразу первый и последний гвоздь в крышку гроба своего бизнеса (своего проекта). Да-да, я про то, что весь ваш зоопарк игровых серверов стоит всего на одном IP-адресе.
Помните, я писал выше про адреса? Так уж получилось, что 1 IP-адрес не может работать на 2 и более физических сервера без дикого колхоза. Т.е. вы не сможете разделить нагрузку на несколько серверов без смены IP-адреса у клиентов. Вывод - придется менять у части клиентов. Думаете они воспримут такую новость с радостью? Я напомню, что они вкладывались в развитие и продвижение определенного адреса и смена его грозит потерей большого количества игроков.
Вложения в связку IP:Port могут быть очень даже немалыми. Клиенты обращаются в хостинг-компании в первую очередь из-за стабильности и беспребойности работы.
Но тут уже ничего не сделаешь - вы сами себя зарыли и отрезали все пути отхода в этой ситуации.
Что делать в этой ситуации? Тут уже все карты вам в руки. Если вам важен созданный имидж, то будете пытаться как-то урегулировать конфликт путем скидок или бесплатных месяцев. Готовы работать еще некоторое время в сильный минус? Я напомню, что у вас уже не 1 физический сервер, а несколько. Но в этом случае можно как-то удержаться на плаву... с убытками, но на плаву.
Если забьете и спишите на форсмажор или еще хуже - обвините клиентов в превышение нагрузки на оборудование, то это превратится в гневные посты на всех профильных форумах, ибо это не форсмажор, а явный ваш косяк, который вы еще и показали всем в мониторинге клиентов. Итог такого варианта - пара клиентов, которых проблема не коснулась может и останутся, но половина уйдет, а новые, после прочтения гневных писем, вряд ли будут в очереди за "офигенным сервисом" стоять.
Надеюсь теперь всем понятно, для чего на 1 физический сервер стоит прикручивать несколько адресов в случае, когда есть возможность превышение нагрузки на железо.
Оверселлом промышляют
все игровые хостинги на слотовых тарифах - не вы первые, не вы последние. Другое дело, что не стоит продавать более 30-40% слотов выше максимального количества для вашего оборудования и про пути решения проблемы, в случае повышения нагрузки, забывать не стоит.
Что бы было, если бы изначально на одном сервере было несколько адресов и вы бы сразу раскидали по ним клиентов в зависимости от возможной нагрузки? Да все очень просто - объявляете о ночных технических работах, перед этим арендовав еще один физический сервер, за ночь переносите часть серверов на второй физический сервер и вуаля - утром серверы продолжают работать, как и работали, у вас красные глаза и -10к за вторую железку, клиенты довольны, что вы быстро решили проблему с лагами.
Ах, да, забыл... После того, как выспитесь после безумной ночи начнете вдруг понимать, как правильно строить ценовую политику и чем грозит демпинг.
Да, именно такая цена ошибки. Иногда экономия, буквально пары десятков рублей, может привести к полнейшему краху.
Что ж, вот вам еще одна простая истина -
Кроилово приводит к попадалову
Офигеть... Ответил, блин, на вопрос... Тонна текста, 2:30 ночи и рубит уже...
А, ну да... Ответ на вопрос простыми словами для тех, кому лень это все читать:
Несколько IP-адресов на одном сервере( и изначально раскиданные на них игровые серверы) позволят вам распределить нагрузку с одного физического сервера на несколько, при этом не потеряв онлайн и клиентов.
Ну теперь точно всё, пинайте.