Перейти к содержимому

Донат
На хостинг
ISK за переводы
до 75kk за 1000зн.
Хроники EVE
Сборник
Новичкам
Полезная информация

one_sk

Фотография one_sk

one_sk

Регистрация: 13 Jul 2010
Не на форуме Активность: Oct 07 2013 15:21
-----

В теме:Чтобы я сделал если бы был владельцем CCP

14 August 2013 - 13:17

Разрабатывать можно и 100 лет. Вопрос в том какикими силами и за какие деньги.
Я указал силы и деньги - и с такими силами и деньгами нет проблем написать с нуля еву в два раза лучше чем была.
Второе у евы глобально три затыка
1)Однопоточность
2) Питон
3) Дерьмовый мейн луп сервера- куда впихано и обращение к бд и гейммеханика и вообще всё

 

 

 

Однопоточность при подходе "один поток на один процесс" и "все через ipc" - внезапно работает.  Питон не зло. Спроси у гугла и NASA. Надо знать ограничения и правильно готовить. Судя по отдельным презенташкам в открытом доступе и инсайду из CCP - у них такое понимание есть. Да, легаси мешает. местами очень сильно, но проблемы решаются (stackless i/o, eve64, и т.д.)

 

Следи за руками. Бухой выпускник щуки НАРИСУЕТ тайфун- на бумажке. За пол часа , да даже за десять минут и с бодуна.
Что никак не связано с тем что варгейминги тратят на новый танк 1 месяц
Модель в игре? (имплементированая уже как ассет) или модель вообще?

 

 

 

омг, какое отношение имеет эскиз на бумажке к ассету в игре? В игре мы не на бумажках летаем, а на 3д моделях.

 

Не стоит передергивать, речь про полный процесс разработки модели от эскиза через моделлинг и текстуринг до ассета. С ее оценкой ты ошибся где-то на порядок. 

 

Да но сейчас 2013 и поэтому стоило бы переписать сервак.

 

 

 

Переписывать редко хорошая идея, практически в любом software engineering. Всегда есть чем заняться вместо, с большим выхлопом. Поэтому все так молятся на рефакторинг как на компромисс.

 

Насчет 2013 - называй альтернативы. Вот мне реально интересно, чем ситуация кардинально изменилась за это время, что питон перестал быть одной из очень серьезных альтернатив.

 

Под аллоды ядро сервера переписывалось дважды при уже запущенном проекте.

 

 

 

Личная просьба - мейлрушечку в целом и ололоды в частности в пример приводить не стоит, ок?

 

 

Да исландия это опа. Но это не помешало иметь ЦЦП Шанхай и ЦЦП КФ - захотели бы сделали "программерский офис" в штатах

 

 

 

Они появились когда ева относительно взлетела. До этого они работали чуть ли не за еду, и поначалу толком не верили что у них хоть что-нибудь получится.

 

 

По факту с игровыми проектами на 100к ццу имело дело столь малое количество людей что хватит пальцев чтоб всех пересчитать.

Однако оне есть.

1) ? это вы неподумавши игровой проект же
2) Чтож я такое передаю что у меня гигабита нехватает (вся бд будет пол террабайта дай бог)
3)Ну если у вас гугловый датацентр то наверно да, если у вас кластер на 100к кку то нет.
PS
Деградация SSD вполне предсказуемое явление и следовательно решается своевременной заменой.

 

 

 

1) Отнюдь - 10 гбит с шарда достигаются легко, если twitch controls, а не евастайл. Если это TCP, то цифры вполне терпимые, однако если трафик идет по UDP и имеет тенденцию к спайкам, то банально начинаются переполнения FIFO у маршрутизаторов, ресенды и дропы шкалят, паника, баны, звонки в 3 ночи. Это суровая реальность.

 

2) Если наружу уходит 10 гбит,  то внутри с не таким оптимизированным протоколом может быть еще больше. Большая часть сообщений ходит внутри нод через память, однако то, что надо прокинуть по rpc, может легко достигать существенных значений. Сотня метров в секунду - это тлен же, достаточно легко уперется даже не гоняя ассеты вроде серверных коллижен форм (а с ними еще проще).

 

3) Кластер на 100кку это на секундочку 30-150 server grade машин в зависимости от оптимизации. Ксеоны, 6 ядер,  2-4 проца, десятки-сотни гигабайт ecc ram - по-взрослому все. Да, не датацентр гугла, но симптомы намечаются.

 

Отвал никогда не является предсказуемым явлением. MTBF в 50000 часов не значит что ровно через 50к часов из ссд пыхнет сизым дымом и он отправится на небеса. Первое слово - mean, "среднее". Он может и через час откинуться, а может и никогда. По факту у гугла на среднем воркере может отваливаться до 10 винтов за день. На кластере в 100кку отвал винта, кернел паник у машины, сизый дым из сетевухи могут возникнуть раз в неделю. Останавливать из-за этого кластер - не вариант. На 4к это столь несущественно, что может считаться emergency.

 

В игровом сервере отвал БД это падение сервера - тк операции с предметами(весь итем менеджмент) перестанут проходить (а если они у вас проходят при отвалившейся БД то у вас дико кривой код гейм механик серверов и архитектору надо оторвать руки)

 

 

 

Игрокам глубочайше срать на то, что у тебя отвалился или протормаживает коннект к какой-то дальней базе. Поэтому в случае отвала с ограничением на некоторые операции можно и нужно жить, складируя транзакции в локальной базе, а потом реплицируя изменения. На суровых онлайнах за минуты их натекает столько, что репликация потом может затянуться на часы, и при этом надо сохранять консистентность. Ей богу, у тебя все так просто, нахера только CAP теорему выдумывали?

 

PS
И что масштабировал? просто интересно.

 

 

 

Извиняй, на этом форуме я предпочитаю оставаться лоусечным бичьем. Если реально важно - могу рассказать в ЛС. Хотя с большего очевидно ведь.

 

250к кку это достойная цифра применительно к еве этого было бы более чем достаточно. (онлайн за пять лет практически не изменился если не упал тк я помню цифры в 65к кку - сейчас в основном даже в выходные 50к кку)
PS

 

 

 

Думаю капасити сервера в списке причин, по которым кку евы невысок, находится где-то на предпоследнем месте. Как мысленный эксперимент представь себе фритуплей еву - вот там железо сразу затрещит.

 

 

В случае с варгеймингами шардирование натуральное решение и можно было бы дробить хоть по 3к - просто резать более крупными кусками удобнее вплане обслуживания

PPS
Мэйловцы обещают на скафордже масштабирование до 1 млн кку.
А чего там у нас такого было вообще сделано в последний год? ТиДи вроде в прошлом ещё, кружочки вместо квадратиков?

 

Шардирование - это плохо. Шардирование режет игроков по реалмам, накладывает ненужные ограничения. Танки хотели жить без шардов, а не смогли. По твоим словам там можно хоть 10 миллионов сделать.

 

А ты просто не учитываешь миллион нюансов, которые сходу и не видны, и большая часть из них связана с относительной рахитностью современного оборудования. Причем я не про SSD и процессоры, а про сети. В них основной затык.

 

И когда мейловцы покажут 1 млн кку на одном кластере - тогда и будет о чем говорить. В этом мире слишком много громких обещаний :)


В теме:Чтобы я сделал если бы был владельцем CCP

13 August 2013 - 14:15

 
Эта не может быть от слова совсем- если всё так как ты описываешь, либо что более вероятно над моделью работает 1.5 человека поэтому и делают месяц.

 

Почему 1.5 человека делают месяц это по-твоему нормально? Бухой выпускник щуки за полчаса с бодуна же? Надо быть последовательным в своих убеждениях.

 

Это просто факты, сходу пруф не нагуглю, но он был. Разрабам танков в таком вопросе не к чему врать.

 


 

Потому сейчас у них вообще всё в одном треде и гейммеханика (вообще вся от копки до планетарки)

 

 

Открою страшную тайну - в Python есть GIL (Global Interpreter Lock), из-за которого разносить логику по потокам не то что не выгодно, а порою даже вредно для производительности. Само собой, я говорю про интерпретируемый код - нативные расширения вполне могут молотить на нескольких ядрах. Поэтому параллелят методом "один поток на процесс, процесс на ядро". Работает довольно неплохо при адекватной архитектуре.

 

Прежде чем ругаться на Python, замечу, что все критичное (навроде обсчета физики, ракет и пушек) у CCP давно спущено в нативные расширения. На момент же старта разработки евы (97-й год, на секундочку), адекватного языка с green threads кроме Stackless Python не было.

 

Предлагать же "переписать все на плюсах чтобы было быстро" могут только школьники, не понимающие сути проблем в производительности.

 

не смешивать боевую механику \с остальной механикой\ с записью и обращениями к БД (а спайк лага при бомбёжке например вызывается именно обращениями к БД)

 

 

 

Опять же, в девблогах упоминалось, что ортогональными функциями занимаются отдельные ноды - есть маркет ноды, чат ноды, грид ноды.  Маркет в жите никак не мешает ганкать в Akora.

Что до обращения к БД, то persistence внезапно очень важная вещь. Между откатами и лагами многие разработчики выберут лаги (потому что откаты по рассинхронам это очень мерзкая вещь, лучше их убивать в зародыше).

 

(и не удивлюсь если БД на HDD)

 

 

 

То, что для хранения БД CCP использует DRAM SSD производства RAMSAN, знают даже люди, очень далекие от евы. Быстрее на настоящий момент нет ничего. Афаик у Texas Memory Systems CCP первый гражданский клиент (до этого были строго американские военные)

 

он считает что в ЦЦП нет адекватных программистов

 

 

 

Адекватных программистов вообще мало. Это суровая реалия жизни. Таких, чтобы шарили в распределенном программировании со всеми его нюансами - вообще мизер. Странно что CCP  в такой маленькой стране как Исландия вообще смогли найти такие кадры, и при этом подняться с ног без жирного иностранного наукоемкого middleware.  Местами получилось не очень, но то, что получилось вообще - это феномен. Возьми любой город в РФ с населением Исландии (320к) и представь, что местные программисты основали контору которая способна породить продукт уровня EVE. Верится? Слабо. 

 

И тут появляется некто и говорит что саксофоны это настолько омфг сложно что работать непереработать
Когда же его спрашивают -чего же там такого сложного - он прыгает в кусты. Знающий человек указал бы на фрезеровку (ну например на проблемы с синхронизацией между множественными многопоточными серверами игромеханик, ну или там типа фронтенд намиллион клиентов сделать сложно-хотя ничего особо сложного)
что уже повод для обсуждения, а нет аргументов нет и нормального обсуждения.

 

 

 

 

Я вот лично саксафонов (перситент серваков на 100.000 ccu) не делал , но много работал с горнами (шардованные сервера на 4.000 ccu) и считаю саксафон не намного сложнее

 

 

 

Ну внезапно 100к ццу и 4к ццу это разница в 25 раз :) Ты лукавишь говоря что разница небольшая, ну или не имел опыта работы с такими проектами. По факту:

 

1) Твой траффик с внешних интерфейсов столь велик что способен завалить магистральный провайдер

2) Внутренняя сеть кластера на гигабит перестает справляться, а апгрейд до инфинибенда это сложно и дорого

3) Вылет винта, памяти, процессора на одной из машин - это статистически не редкость допускающая даунтайм, а нечто,  происходящее раз в сутки

4) Любое провисание, вызванное отвалом коннекта БД, сетевыми лагами, partition в сети - порождает за минуты бэклоги, которые синхронизируются часами, а при этом в этом inconsistent state надо работать.

 

У меня есть опыт масштабирования таких масштабов, и поверь, проблемы начинаются уже на 10к, и каждый новый рубеж порождает новые ботлнеки. Шардинг - это реально в разы проще. БелАЗ это не легковушка увеличенная в сто раз, это принципиально другая машина.

 

Если вспомнить те же танки, то они в свое время уперлись в 250к ццу на одном кластере, после чего ушли в шардинг с центральной БД. При этом шарды больше 150к теперь не создают. Хотя казалось бы, что может быть проще по масштабированию, чем бои 15 на 15.

 

Ну если с текущей политикой не разорилась - то любой новый может только помочь

 

 

 

Тьфу-тьфу, а последний год CCP имхо няшки и большую часть вещей делают правильно. Не сглазь. От добра добра не ищут :)

 


В теме:Чтобы я сделал если бы был владельцем CCP

12 August 2013 - 21:53

 И наконец образ уровня равена, тайфуна (омфг), кроу, маледикшен (он симпотичный но просотой как 5 копеек) , трешера - вам нарисует бухой выпускник щуки за опохмелиться. И замоделят меньше  за день (всех скопом, ну кроме может маледикшена тк кривые)

 

омг... Разрабы танков, которые активно привлекают к моделлингу аутсорс (со всего СНГ, думаю, пресловутые выпускники щуки туда тоже входят) как-то упоминали, что на полную разработку одной модели (все этапы, от эскиза/референсов до финальной приемки) в среднем проходит месяц. 

 

Что касается играть в свою собственную игру - я, хотя и приверженец этой позиции, тем не менее не очень понимаю, каким образом это является существенным критерием оценки качества работы администратора БД, программиста серверного бэкенда, operations engineer, да вообще половины геймдевовских IT профессий напрямую не связанных с гейм балансом/гейм мастерингом. В текущей ситуации адекватного программиста днем с огнем не сыщешь, так пускай вместо отдыха между периодами вбивания пикселей в монитор он тратит свое свободное время на заправку ПОСов с целью что-то доказать ТСу? Боюсь, не самая лучшая идея.

 

 Геймдев и так не самая прибыльная отрасль для разработчика, особенно сейчас. Подобные чудо-предложения способны только загубить кое-как живущий проект, но никак ему не помочь.


В теме:Следите за целью!

11 October 2012 - 12:59

Безусловно, после многолетней практики наблюдать одинаковые полоски одна над другой, предложенная схема с секторами выглядит непривычно, но скорых выводов делать не стоит - запомнили же на подсознательном уровне порядок SH/AR/ST, думаю, тут будет также через полчаса.

Однако подумалось, если уж и использовать этот формат с секторами, то не стоило бы попробовать сделать их пропорциональными объему соответствующих порций хп (с резистами или без, не настолько принципиально). Конечно, это навредит разводным хуллтанкам, но в PVE, как мне кажется, может быть полезно. Ну и всегда приятно знать, когда дрейк - арморный :)

В теме:Russian community of pilots

10 October 2012 - 10:13

Позвольте задать один нескромный вопрос.  Играю сейчас довольно редко - свободного от других хобби, семьи и работы времени остается мало, однако встречать в локалах молденхита ваших мемберов доводилось. Не буду упоминать чаров, ровно как и не буду обобщать на всю корпорацию, однако отдельные вещи, навроде названий кораблей в духе "потный мудак", "висячий писюн" и "негры гомосеки" (за букву не ручаюсь, передаю "дух"), прецедент получения потока ругани в локал в ответ на адекватное предложение хонорабл пвп, или использование в чате языка, имеющего с русским разве что общий алфавит, вызывают некое отторжение. Думаю, со мной согласятся многие люди старше 13 лет, хотя по профилю вашего форума те чары, с которыми я столкнулся, чуть ли не отцы достойных семейств, если судить по заявленному возрасту.

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

Чего мы ждем от вас:
Адекватность.
Желание развиваться.
Желание играть в команде.


Ввиду острого когнитивного диссонанса между заявленным и реальностью я бы хотел уточнить, что вы под этими всеми пунктами понимаете?