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

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

Ответ
Опции темы
Непрочитано 22.12.2012, 20:00   #1
Пользователь

Автор темы (Топик Стартер) Архитиктура mmo сервера

Собственно так как на этом форуме собирается масса людей работающих с серверами а именно серверами lineage 2 java. Интересует вопрос организации архитиктуры сервера, каким образом там все работает, какой протакол используется.

Приведу мой пост на другом форуме
Пост:
Свернуть ↑Развернуть ↓


По поводу архитектуры Аллоды онлайн, дам ссылку, может кому интересно будет, кстате советую всем глянуть кто работает с java, человек расказывает о плюсах и минусах, и почему они выбрали именно ее.
http://rutracker.org/forum/viewtopic.php?t=2961984

От вас интересует все таки, брать java или C#?) и интересно как организован сервер lineage2, рытся в исходниках не какого желания нет, да и с java я не знаком, учить пока не берусь, вот пока теорией запасаюсь, если же все же решу писать на java то думаю первым делом ее изучу и начну смотреть архитиктуру lineage 2 , а пока интересует ваше мнение, что бы вы например изменили если бы вам предстояло писать сервер под клиент lineage 2 с нуля, что вам не нравится в существующем сервере. И еще один вопрос
Откуда собственно появился пиратский сервер на java. На сколько мне изве стно офицальные сервера писались на C++ ,хотя я могу ошибаться, дак вот что все пишут все свои пиратские сервера с нуля, или же есть какая то команда которая собрала сервер на java под клиент, и на основе их сборки вы все уже пилите свои?

Списибо за внимание!)
ldgames вне форума Ответить с цитированием
Непрочитано 23.12.2012, 00:52   #2
Аватар для n3k0nation
Antihero

По умолчанию Re: Архитиктура mmo сервера

Хоу-хоу, всех с наступающим

Тема слишком обширна и ее не описать в одном посте, на данный момент написаны и пишутся книги по таковой теме

Цитата:
От вас интересует все таки, брать java или C#?)
Берите, то что лучше знаете и где ваш мадскиллз будет вытягивать все.

Цитата:
Откуда собственно появился пиратский сервер на java. На сколько мне известно офицальные сервера писались на C++ ,хотя я могу ошибаться, дак вот что все пишут все свои пиратские сервера с нуля, или же есть какая то команда которая собрала сервер на java под клиент, и на основе их сборки вы все уже пилите свои?
В наше время нет героев. Естественно все основано на одном ядре и все ошибки этого ядра переходят из команды в команду и ядро это l2j-server. Так же существует существенно переделанный форк l2j-server в виде l2j-fortress, продолжение которого вылилось в asterios (l2p/phoenix) и в сервак некоторых людей с этого форума (извиняюсь, забыл название сервера ). Плюс пару лет назад существовали закрытые проекты по написанию эмулятора с нуля, но похоже они так и остались в тине дна морского.

Цитата:
пока интересует ваше мнение, что бы вы например изменили если бы вам предстояло писать сервер под клиент lineage 2 с нуля, что вам не нравится в существующем сервере.
Это не раз уже обсуждалось на форуме и не только этом.
Создание движка сервера (L2)
Cashed true system
L2Dev (Blakkky)
Balancer l2f forum


Про остальное напишу чуть позже, ибо уже полгода нахожусь не в той ситуации, чтобы много писать
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
n3k0nation вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 23.12.2012, 10:15   #3
Пользователь

Автор темы (Топик Стартер) Re: Архитиктура mmo сервера

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

Добавлено через 5 минут
А, да еще, мне интересно как организованна связь между login server и game server.
То есть покопав сервера lineage 2 я обнаружил что для авторизации регистрации и т.д, служит login server который ставится например на отдельный физический сервер, и game server обрабатывающий всю игровую физику и т.д ставится на другой физ сервер(хотя наверное можно и на одном физ сервере..Да определенно можно!) Интересует как между ними оргинизованна связь, логин сервер при удачном конекте передает ключ в game сервер?... Пока я себе это предстовляю так, хотя тоже нужно качать да смотреть) может кто хотяб носом ткнёт на реализацию этого в l2jserver .

И еще одна вещь, некоторые команды разработчиков lineage 2 серверов, используют отдельны сервера для чата, или я путаю с aion, но где то такю фишку я точно видел тоесть : Login server, Game server, Chat server на сколько выгодно в плане производительности.


И еще одно, по какому же все таки протоколу в lineage2 идет обмен данными, UDP?)

p/s все вопросы впринципе кроются в исходниках, но ведь вам работающим людям с этими исходниками куда проще написать мне эти мелочи, или ткнуть носом в конкретный участок кода, чем я буду лопатить неизвестный мне код и искать что то для себя полезное, хотя я и начинаю уже его смотреть)


Да кстате, если знаете какую нибуть литературу по поводу строения, архитектуры mmo сервера, буду рад))) Без разницы на каком языке, что русский что английский, язык программирования тоже не важен, интересует только сама архитектура) как это все продуманно и т.д.. Сам как уже говорил пока нарыл только архитектуру Алоды онлайн

Последний раз редактировалось ldgames; 23.12.2012 в 10:27. Причина: Добавлено сообщение
ldgames вне форума Ответить с цитированием
Непрочитано 23.12.2012, 11:11   #4
Аватар для Zubastic
ZG troll squad

По умолчанию Re: Архитиктура mmo сервера

ldgames, может имеете ввиду petition server?
L2j:
login server
game server

L2 pts:
login server (или его заменитель, привет хинту)
l2server (аналог game server l2j, но урезанный ввиду наличия других сервисов)
petition server (сервер игровых петиций)
cached (прослойка между сервером и базой данных)
l2npc (мобы, просто мобы)
premium server (мистический сервис премиума)
l2comm (коммьюнити)
l2logD (система логгирования)
Zubastic вне форума Ответить с цитированием
Непрочитано 23.12.2012, 11:15   #5
Пользователь

Автор темы (Топик Стартер) Re: Архитиктура mmo сервера

Цитата:
Сообщение от Zubastic Посмотреть сообщение
ldgames, может имеете ввиду petition server?
L2j:
login server
game server

L2 pts:
login server (или его заменитель, привет хинту)
l2server (аналог game server l2j, но урезанный ввиду наличия других сервисов)
petition server (сервер игровых петиций)
cached (прослойка между сервером и базой данных)
l2npc (мобы, просто мобы)
premium server (мистический сервис премиума)
l2comm (коммьюнити)
l2logD (система логгирования)
Да я имел что то в этом роде) Спасибо , скажите где можно поподробнее глянуть cached . Как идет работа с данными, например не всегда ведь идет запись в бд не важных данных: Например координаты при перемещении(иначе бы база сдохла) а хранятся в памяти и скажем раз в 5 минут летят в базу, а допустим при обмене вещами уже данные летят в базу сразу, где на примере l2jserver можно покапать это, ито там так много всего, и так мало полезного пока нашел в исходниках...

Добавлено через 50 минут
Не по теме:
Свернуть ↑Развернуть ↓

Последний раз редактировалось ldgames; 23.12.2012 в 12:05. Причина: Добавлено сообщение
ldgames вне форума Ответить с цитированием
Непрочитано 23.12.2012, 12:30   #6
Live free or die!

По умолчанию Re: Архитиктура mmo сервера

Цитата:
Сообщение от ldgames Посмотреть сообщение
Не по теме:
Свернуть ↑Развернуть ↓
Когда-то наша команда начинала работать на Git, но потом перешли на SVN. Основная причина - полнейшее нежелание пользователей читать мануалы и вникать как работает Git. Пользователи на форуме постоянно создавали тонны тем аля "ПАМАГИТЕ НИМАГУ СКОЧАТЬ ИСХОДНИКИ!!11".
Dеmon вне форума Ответить с цитированием
Непрочитано 23.12.2012, 12:31   #7
Аватар для VISTALL
Illussion is real

По умолчанию Re: Архитиктура mmo сервера

Цитата:
Сообщение от Dеmon Посмотреть сообщение
Когда-то наша команда начинала работать на Git, но потом перешли на SVN. Основная причина - полнейшее нежелание людей читать мануалы и вникать как работает Git. На форуме постоянно создавали тонны тем аля "ПАМАГИТЕ НИМАГУ СКОЧАТЬ ИСХОДНИКИ!!11".
руки-крюки. что можно сказать ищо
__________________
consulo.io - Consulo - multi-language IDE
VISTALL вне форума Ответить с цитированием
Непрочитано 23.12.2012, 12:39   #8
Live free or die!

По умолчанию Re: Архитиктура mmo сервера

Цитата:
Сообщение от VISTALL Посмотреть сообщение
руки-крюки. что можно сказать ищо
Да больше ничего и не скажешь...

Говоря о Git, имхо, намного лучше, чем SVN.
Dеmon вне форума Ответить с цитированием
Непрочитано 23.12.2012, 13:47   #9
Пользователь

Автор темы (Топик Стартер) Re: Архитиктура mmo сервера

Цитата:
Сообщение от Dеmon Посмотреть сообщение
Да больше ничего и не скажешь...

Говоря о Git, имхо, намного лучше, чем SVN.
Это да))) Про то что не могут установить полностью согласен, тоже встречался с тем что пользователям лень прочитать мануал и установить git, под винду. Я уж и расписывал с криншотами) даже пример как пользоваться Turtoise Git приводил) один фиг темы плодили))))) В итоге забил на них) Сказал мануалы есть) читаейте) Им все таки надо а не мне) а на svn не переберусь после git'a точно)))


И все таки вернувшись к теме, появилась следующая идейка: Пользователь(клиент) при конекте создает канал, передает сообщение серверу, по UDP протаколу на так сказать 'Прихожую', та в свою очередь подписывает клиента на сообщения и выделяет ему новый поток, И дальше клиент получает координаты других обьектов в зоне видимости и т.д .


Но ведь дело в том что приедтся все по 10 раз проверять, ведь протакол UDP не гарантирует даставку, а утеря данных неприемлима в моем случае...


Как эта структура реализованна в lineage 2?)
ldgames вне форума Ответить с цитированием
Непрочитано 23.12.2012, 13:51   #10
Аватар для Zubastic
ZG troll squad

По умолчанию Re: Архитиктура mmo сервера

Цитата:
Сообщение от ldgames Посмотреть сообщение
Да я имел что то в этом роде) Спасибо , скажите где можно поподробнее глянуть cached . Как идет работа с данными, например не всегда ведь идет запись в бд не важных данных: Например координаты при перемещении(иначе бы база сдохла) а хранятся в памяти и скажем раз в 5 минут летят в базу, а допустим при обмене вещами уже данные летят в базу сразу, где на примере l2jserver можно покапать это, ито там так много всего, и так мало полезного пока нашел в исходниках...
Темку про кешед (выше ссылка) почитайте.
Zubastic вне форума Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
FAQ: Установка и настройка сервера Rebellion ilyxa Lineage II 67 04.04.2013 21:16
topanons.ru - кидало Winner10 Курилка / Yak floor 122 29.10.2012 15:22
Руководство по поднятию сервера AiON на Linux платформе sotariz Документация 26 27.07.2011 07:05
Компиляция и базовая настройка сервера MaNGOS (3.0.9) PROGRAMMATOR Документация 125 12.04.2011 13:43
Установка сервера с нуля ! otmarozok Call of Duty 4 8 30.09.2008 13:38


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

Вверх