Движок la2 - Страница 6 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Ответ
Опции темы
Непрочитано 20.01.2017, 16:03   #51
Пользователь

Автор темы (Топик Стартер) Re: Движок la2

Цитата:
Сообщение от f1redark Посмотреть сообщение
На счет серверов, я так же могу попросить примеры игровых Java серверов. Только не l2, пожалуйста, ибо его даже на php можно было бы написать, и все нормально заведется, т.к. речь про high load в сфере l2 не идет, особенно на гфш, которые еле еле 2к онлайна собирают.
Skyforge сервер написан на java. Они даже на хабре большую статью по этому поводу запилили, и они счастливы)
REchargeD вне форума Ответить с цитированием
Непрочитано 20.01.2017, 16:55   #52
Пользователь

По умолчанию Re: Движок la2

Это мыло. И им насрать. Им нужен профит максимально быстро....
Они в своем скайфордже проверяют тип объекта instanceof..... (проверяют всю сигнатуру класса) это просто жесть.
ладно так делают разработчики эмуояторов, но когда так делают разработчики в крупной фирме... просто слов нет.
Alay вне форума Ответить с цитированием
Непрочитано 20.01.2017, 23:23   #53
Пользователь

По умолчанию Re: Движок la2

Цитата:
Сообщение от Alay Посмотреть сообщение
Они в своем скайфордже проверяют тип объекта instanceof
А как надо?
flopix вне форума Ответить с цитированием
Непрочитано 20.01.2017, 23:46   #54
Пользователь

По умолчанию Re: Движок la2

Цитата:
Сообщение от n3k0nation Посмотреть сообщение
f1redark, League of Legends пойдет в качестве хайлоада и игрового сервера? Распределенные сервера, одновременных клиентов более 50 000 на каждом региональном "бутерброде" серверов. И да, я говорю про ретейл.
Пойдет, спасибо, с удовольствием почитал бы подробности, если они конечно есть в паблике, по поводу используемого стека технологий, архитектуры, и т п)
f1redark вне форума Ответить с цитированием
Непрочитано 21.01.2017, 03:38   #55

По умолчанию Re: Движок la2

Java на PayPal
https://youtu.be/U1Wx3PDxWhk

TL;DR:
Свернуть ↑Развернуть ↓


Вы будете удивлены, но огромная часть мировых продакшнов которые вы знаете написана на более высокоуровневых языках чем цпп. Потому что скромный выигрыш в скорости теряется на фоне конских затрат на разработку/поддержку приложений на нём. Попробуйте организовать работу пары сотен с++ разработчиков одной платформы так, чтоб они не занимались исправлением багов друг друга, а делали хоть что-то полезное и успевали кататься в продакшн по несколько раз в день.
В современном мире задачи таких низкоуровневых инструментов немного другие - решить местечковую задачу, что-то там ускорить, где другие способы реально бессильны, постараться не сломать ни чей код, закоммитить и не трогать до тех пор пока работает.
Чем больше времени вы уделяете актуальной бизнес логике и чем меньше времени тратите на какие-то тривиальные штуки - тем более жизнеспособным будет ваш сервис, не важно что это, игровой сервак, биллинговая система, поисковый робот или простецкий сайтик со скидками.
Абсолютно не нужно заниматься преждевременной оптимизацией т.к. ваше супер-фаст-хайлоад спп аппликейшн внезапно может оказаться бессильным против сетевых лагов между нодами. И заказчик/менеджер() придет к вам за спросом, чо-ж оно тормозит то? А в ответ услышит: а мы чо, мы ни чо, сделали всё возможное, оно такое-сякое само лагает, по независимым от нас причинам
Camelion вне форума Отправить сообщение для Camelion с помощью ICQ Ответить с цитированием
Непрочитано 21.01.2017, 11:25   #56
Пользователь

По умолчанию Re: Движок la2

Цитата:
Сообщение от flopix Посмотреть сообщение
А как надо?
Добавить верхнему графу(базовому классу от которого игровые объекты наследуются) допустим enum который будет содержать информацию о типеобъекта. А в конструкторах наследников указать тип. Как вариант.
Просвичить enum куда менее требовательно к ресурсам чем чекать весь инстанс.
Как вариант.
Alay вне форума Ответить с цитированием
Непрочитано 21.01.2017, 11:59   #57
Пользователь

По умолчанию Re: Движок la2

Цитата:
Сообщение от Alay Посмотреть сообщение
Добавить верхнему графу(базовому классу от которого игровые объекты наследуются) допустим enum который будет содержать информацию о типеобъекта. А в конструкторах наследников указать тип. Как вариант.
Просвичить enum куда менее требовательно к ресурсам чем чекать весь инстанс.
Как вариант.
Это кривой способ, ведь давно придумали acyclic visitor.
f1redark вне форума Ответить с цитированием
Непрочитано 21.01.2017, 12:23   #58
Пользователь

По умолчанию Re: Движок la2

а инстансоф самое то да:?

Добавлено через 2 минуты
Цитата:
Сообщение от f1redark Посмотреть сообщение
Это кривой способ, ведь давно придумали acyclic visitor.
и чем же он кривой?

Последний раз редактировалось Alay; 21.01.2017 в 12:25. Причина: Добавлено сообщение
Alay вне форума Ответить с цитированием
Непрочитано 21.01.2017, 13:17   #59
Пользователь

По умолчанию Re: Движок la2

Цитата:
Сообщение от Alay Посмотреть сообщение
а инстансоф самое то да:?

Добавлено через 2 минуты


и чем же он кривой?
Хотя бы тем, что требует вагон каскадных if, и down casting, для того, что бы определить реальный тип объекта.
f1redark вне форума Ответить с цитированием
Непрочитано 21.01.2017, 13:26   #60
Пользователь

По умолчанию Re: Движок la2

Статья на хабре Архитектура skyforge


где тут down casting как вы выразились если можно сделать так

Код:
public enum ObjectType
{
Avatar,
Kto-to,
Kto-to2
}

if(abonent.objectType != ObjectType.Avatar) // Чтобыстрее сравнить 1-2 байта либо же сигнатуры. ????
{
Cast.logError(****);
return;
}
instanceof говорит лишь о том что архитекторы кода где то смухлевали.

Такой же способ к сожалению используется и во всех сборках l2 эмулей.
Вообще такое впечатление что разрабы пишут instanceof в любой непонятной ситуации когда особо не хочется задумываться. А зря.
А что если такая конструкция будет в коде который очень часто используется ? получаем колосальные задержки которых можно было б избежать чутка подумав. Но нет. Нам лень. Нам нужен продакшен и как можно быстрее.

Да и вообще мне кажется что ответ заданный в этой теме Вам был дан и она начинает скатываться в дебри. Кому лень читать.
Вопрос:
1)Почему java, а не С# или C++?
2)Какие преимущества будут у java над C# или С++, ну или наоборот?
Ответ:
1) Потому что на момент создания первого эмуля всех интересовал линукс. C# не был развит тогда как сейчас. Почему же не С++ - эмуль создавался в торопях и в основном энтузиастами. Они же хотели как можно быстрее увидеть хоть какой то результат. На тот момент java была лучшим решением для поставленных целей.
2) На данный же момент C# более перспективный язык. MS не любили потому-то мало кто знал что у них под капотом. Сейчас же наконец-то мелкософт понял что будущее за OpenSource и работают теперь в данном направлении. А это выталкивает C# вперед. ИМХО. Могу и ошибаться. Сам раньше любил кодить на Java. Пока не попробывал C#. С его WPF и прочими вкусностями. Переходить обратно не собираюсь и нет необходимости.
По поводу цены на win. С выходом Win 10.1 и 2016 сервером. Это того стоит. Темболее раз уж вы пираты - то кто вам помешает скачать KMSAuto Net и ставить серв на win10? или же вам прям так необходим Activedirectory?
Так почему же нет на шарпе работающих эмуляторов. - Потому что придется писать практический все с нуля, что писали 10 лет подряд. Все таки L2 хоть и бессмертная но через 10 лет врятли будет актуально.

Еще одна неоднозначность в Java - HotSpot - оптимизатор паттернов. Если вы пишите четко как робот по популярным паттернам, все ОК. Но как только вы начинаете придумывать свои варианты которые возможно работали б лучше, HotSpot вам все запоганит. Плюс это или минус. Каждый пускай решает сам.

Последний раз редактировалось Alay; 21.01.2017 в 14:05. Причина: Добавлено сообщение
Alay вне форума Ответить с цитированием
Сказали спасибо:
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движок Для Птс rqrwre Движки сайтов (CMS) 6 05.01.2014 21:36
Движок для pts Deamond Движки сайтов (CMS) 6 04.10.2013 13:03
Движок тех. поддержки Rovskoi Курилка / Yak floor 6 06.12.2012 17:42
1$ Что за движок 12king Движки сайтов (CMS) 11 10.01.2012 01:39


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 22:52. Часовой пояс GMT +3.

Вверх