Создание движка сервера (L2) - Страница 6 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > Полезное / Common > Программирование / Programming > Java

Java В данном форуме вы сможете найти много полезной информации по платформе Java. Подробные статьи, исходные коды и конечно учебники как для новичков так и профессиональных Java разработчиков вы найдёте здесь. Если у вас есть вопрос или хотите поделится своими наработками, пожалуйста, делайте это в этой теме.
Описание темы:l2j помойка можно сделать свое....

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

По умолчанию Re: Создание движка сервера (L2)

http://rapidshare.com/files/41192965...Comparison.zip

Вот сравнение.
w4ter вне форума Ответить с цитированием
Непрочитано 09.08.2010, 16:24   #52
Аватар для Redvain
Постоялец

По умолчанию Re: Создание движка сервера (L2)

Ребят, как на счёт вот такой основы сервера:
http://www.reddwarfserver.org/?q=con...aming-universe
Это бывший DarkStar от Sun. Хз что из себя представляет, но на нём не маленький такой список серверов сделан был.
__________________
Redvain вне форума Ответить с цитированием
Непрочитано 09.08.2010, 17:34   #53
Пользователь

По умолчанию Re: Создание движка сервера (L2)

Цитата:
Сообщение от pitch Посмотреть сообщение
всегда когда делаешь @Autowire или context.getBean() обращаешся к контексту приложения, чтобы выдернуть бин... Чтобы совсем не обращаться к контейнеру, так не бывает.
один раз при инициализации.

поравка "если верно использовать DI, то вообще не прийдется часто обращаться к контексту. "


Как вернусь с работы домой напишу несколько сравнительных тестов.
Хотя тут и тестировать нечего - прямой вызов статического намного быстрее будет.
__________________
for(;Forum.getPostCount() < Integer.MAX_VALUE; Forum.writeNewPost()); | TERA Video | GamezTERA Emu
Aquanox вне форума Ответить с цитированием
Непрочитано 09.08.2010, 17:48   #54
Пользователь

По умолчанию Re: Создание движка сервера (L2)

Да что ж вас так в ЕЕ-то тянет?
Еnterprise - это в первую очередь - скорость разработки в ущерб производительности / ресурсоемкости. За написание 30 строк кода + 3х XML-ек вместо 3000 строк кода расплачиваться придется произвобительностью. Много кто готов выделить 2 железяки с 8 ядрами и 16+Гб оперы, как под ПТС, чтоб переварить 200+ онлайна? Кому нужен будет такой сервер ла2?

Вот если это все не для ла2 делается, а для своей игрушки, тогда да, есть смысл.
Но фреймворк для создания игр на базе пачки фреймворков, спроектированных для ускарения разработки ПО - это пусть к кластерным серверам для небольшого онлайна.
Ну чего страшного в написании своего многопоточного NIO движка под сетевую? Да, на это нужно будет потратить неделю и еще неделю его погрузить, чтоб отладить производительность, зато из этого можно будет выжать максимум производительности при минимуме ресурсов. И так со всем.
Blakkky вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 09.08.2010, 19:56   #55
Аватар для n3k0nation
Antihero

По умолчанию Re: Создание движка сервера (L2)

Blakkky, в большинстве правильно, но кто, например, захочет писать свой пул для базы данных (работа напрямую с java.sql & j driver)? Лучше использовать тот же orm hibernate, намного сократит время разработки, к тому же у программиста останется чуть больше нервов
Да и спринг вроде не настолько ресурсоемкий...
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
n3k0nation вне форума Ответить с цитированием
Непрочитано 09.08.2010, 21:55   #56
Пользователь

По умолчанию Re: Создание движка сервера (L2)

Цитата:
Сообщение от Aquanox Посмотреть сообщение
почему бы не Spring использовать в качестве контейнера? Чего такого особенного ты в нем нашел.

Некоторое время работал с Guice 2.0, но всеже остался на Spring'e .
Есть несколько публичных тестов где guice в разы! показывает себя быстрее чем spring. AOP гугла основан на манипуляции байткода - тоже шустрый но правда больше ограничений.

Также находил несколько статей где скорость на базе netty лучше самодельных NIO. Я вообще netty не рассматриваю как жирный фреймворк - если посмотреть ядро то там та же пачка классов которую самому придется писать (хотя погонять в сравнении не мешало бы).

В целом соглашусь что в энетрпрайз залезать не надо. А вот использование DI фреймворка (с ограничениями на рантайм!) это все таки лучше чем классы-синглтоны по всему коду (хотя в принципе можно локатор шаблон в крайнем случае использовать). Также это позволит при разработке заменять имплементацию - например орм или ждбц.

кстати насчет перезагрузки модулей - очень большая вероятность что в итоге надо будет перезагрузить все приложение = рестарт
ATracer вне форума Ответить с цитированием
Непрочитано 10.08.2010, 01:09   #57
Аватар для n3k0nation
Antihero

По умолчанию Re: Создание движка сервера (L2)

Цитата:
Сообщение от ATracer Посмотреть сообщение
кстати насчет перезагрузки модулей - очень большая вероятность что в итоге надо будет перезагрузить все приложение = рестарт
Ну, собственно, если ядро монолитное, то да, но на сколько я помню, изначально было бы неплохо создать микроядро или в крайнем случае модульное ядро. Тут даже можно провести параллель с nix-системами, нам же не требуется отключать все ядро при измении модуля.
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
n3k0nation вне форума Ответить с цитированием
Непрочитано 10.08.2010, 07:29   #58
Пользователь

Автор темы (Топик Стартер) Re: Создание движка сервера (L2)

Че вы к скорости то цепляетесь:
По большому счету медленнее будет только инит сервака, тк спринг будет все бины заливать в контейнер.
Уверен, что орм покажет себя достойно, тк тут не нужны сложные объединеия таблиц, для постройки отчетов, а примитивные вещи (UPDATE,INSERT,DELETE) вполне подходят под ОРМ.
По поводу написания велосипеда, без привлечения фреймов - я против, железо сейчас не особо и дорогое, лишние 200 мб памяти которые возможно сожрут фреймы, в чем я сильно сомневаюсь особой роли не сыграют, на фоне всей картины. Уйдут зато (ламо-админы) которые ставят сборки на домашние компы, а те, кто ставит в ДЦ у них вполне подходящее железо.
ID или прямые вызовы, не думаю, что код будет настолько оптимизорован и идеален, что можно будет упереться в производительность reflection'a. Это не 1.4 ява где рефлекшен был много медленее, изспользуя cglib разницы особо не затемишь, уж игрок 100% наносекунды не обработает зрительно.
pitch вне форума Ответить с цитированием
Непрочитано 10.08.2010, 11:16   #59
Пользователь

По умолчанию Re: Создание движка сервера (L2)

Могу ещё кое-что добавить в пользу использования готовых фреймворков: меньше кода - меньше вероятность ошибок в этом коде, фреймворки пишут не глупые люди, вероятность ошибок при правильном их использовании минимальна.
__________________
for(;Forum.getPostCount() < Integer.MAX_VALUE; Forum.writeNewPost()); | TERA Video | GamezTERA Emu
Aquanox вне форума Ответить с цитированием
Непрочитано 10.08.2010, 12:45   #60
Аватар для VISTALL
Illussion is real

По умолчанию Re: Создание движка сервера (L2)

вкладу свои 5 копеёк ищо раз
1. Сетевая часть(apache mina не годится, netty негодится понял это ASevenfold), я писал свою сетеву NioAcceptor/NioConnector, + поддержка 1 и более NioProcessor которые разгребают конекты, доволи чисто написал, но пока не нашол хорошую идею как розписать работу с буфера(тоисть при чтении/писании), поетому и использую пока ММОГОРЕ. Прийдет время и выброшу xD
2. Почему Вы не довольны серваком л2? А. вам рук нехватает переписать? Ибо это ток слова xD. Реально никто не собирается... А вы скажете, сложно....Ну да есть немного... Я например полностью доволен своим серваком, кроме одной вещи, к которой я скоро прийду и перепишу xD. Это обмен база даных и сервак....(собираюсь и делаю на hibernate). Я например пришол к более ровном ДПаку, тоисть Дп в одной части у мну это XML...(а не SQL, cvs)
3. Ну и последнее, ну нафик фреймворкы что б скоротить 100 строк в 2 строчки, и добавить библиотеку в пару метров? Если Вы не уверены в своей "пряморукость", и хотите использовать чужие фреймворки...Это ваше дело...


Сейчас я пишу на коде L2Dream Open Source(!!!). Год работы, и я могу спокойно назвать то что у мну свой код....Я не прячусь то что я использую некоторые наработки тех же CCP/L2Phoenix/L2JServer....и так дальше, но не копипастю. И не собираюсь забивать голову дурными мыслями про переписать л2 сервака. Поетому лучше берите пишите. А не обговаривайте на форуме xD
VISTALL вне форума Ответить с цитированием
Сказали спасибо:
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание вашего сервера DeadShadow Готовые сборки 36 31.03.2011 06:43
Создание сервера Ragnarok MrArt Курилка / Yak floor 6 31.08.2010 17:06
Создание сервера и продвижение его. Owned Создание сервера 1 04.08.2010 17:05
создание сервера-подскажите .. санеk Lineage II 8 06.03.2010 11:10
Создание PvPGN сервера! AMATORY Создание сервера 3 17.02.2010 14:42


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

Вверх