Как мы удерживали нагрузку десятков тысяч подключений для Warface

Рассказываем про архитектуру мультиплеерного шутера.

Warface — онлайн f2p-шутер, который доступен на основных игровых платформах
200200

Просто для статистики. Вы пишите бэкенд в основном на c#, но местами используете python и go. Почему все не пилить на c#? Есть ли какой-то профит от мультитехнологичности? Или это, как часто бывает, "проснулся с утра и решил, а холибыиненапитоне"?

DotNet особенно в последнее время прям очень даже хорош... начиная с версии 6, так ваще прям огонь. Микросервисы пишутся на раз два. Никакой Go рядом не стоял. И это я не говорю про то, что по-сравнению с Go или Python сам язык в разы приятнее.

2
Ответить

Питон - это легаси от которого мы постепенно отказываемся.

"Для разработки новых сервисов используем следующую идеологию. Если знаем, что сервис получится большим, с большим количеством логики (более 1-1,5 тысяч строчек кода), то мы используем C#. Если знаем, что сервис будет маленький (на несколько сотен строчек кода), используем Golang."

Обычно придерживаемся вышеописанной политики.

Про языки холиварить не очень хочу, у каждого языка есть свои плюсы и минусы :)

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

8
Ответить

Думаю у них как и всех проблема поиска разработчиков, нельзя просто взять и нанять кучу людей потому что на .NET-е писать хорошо стало.

Ответить