Cashed true system - Страница 4 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > Разное / Other > Курилка / Yak floor

Курилка / Yak floor
Свободное общение, рассуждения на любые интересные вам темы.

Описание темы:...

Ответ
Опции темы
Непрочитано 28.11.2012, 19:10   #31
Аватар для n3k0nation
Antihero

По умолчанию Re: Cashed true system

Цитата:
Сообщение от ANZO Посмотреть сообщение
Один большой и толстый минус: валится кешед - валится все без возможности восстановления. С какой периодичностью будет в этом "сферическом кешеде" происходить сохранение в базу, чтобы оправдать свое существование и не стать причиной возможной потери данных? 5-10 минут? Стоит заморачиваться? Я думаю нет.

Возьмем к примеру тот же л2 сервер: ну сколько там тех запросов выполняться-то будет, пускай с 5-ю тысячами игроков, в единицу времени? Мизер, на который даже современное железо ухом не поведет. О таких мероприятиях стоит беспокоится, когда вы будете иметь дело с Highload-проектами от 100 тысяч одновременных активных пользователей, где каждая наносекунда важна как воздух - и то всегда есть шанс, что даже "охренеть-какой-энтерпрайзный бекэнд" на@#$тся из-за мелкой невзрачной ошибки, потянув за собой все.
А вы ппишите клиент-серверные приложения специально с падениями? Если уж так говорить, то есть облачные системы виртуалок джавы, через которые можно застраховаться от падений почти на 100%. В крайнем случае к этому, существует еще и зеркалирование с разными маршрутами входов и выходов.
Бест оф зе бест, как говорится.

Если же реально смотреть на проблему, то кешед будет очень даже полезен, хоть и по сети, а не памяти, т.к. когда я последний раз видел джава эмуль л2 с бд там был полный пипец, это было года 2 назад, мне кажется, что с тех пор мало что изменилось Овер9000 запросов на игрока, при каждом изменении данных заливка в бд, куча незакрытых коннектов, которые утекли и т.п. радости.
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.
n3k0nation вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 28.11.2012, 19:16   #32
Аватар для Gattsu
Пользователь

По умолчанию Re: Cashed true system

Вы понимаете, что активные сессии у вас с постоянным трафиком, тут считать не надо, возьмем даже ходьбу
персонаж перемещается на 1000 единиц его скорость 5 единиц в секунду и теперь посчитаем сколько запросов Вы совершите.Заточка,подъем предмета с земли, торговля, любое изменение как так а...
А как-же монополия владения подключение с СУБД, с подключением нельзя будет работать пока его не освободят пассивный деадлок , принципы работы СУБД знакомы?


Ну зачем смотреть в стену...

На PTS кэш сервер завязан вокруг npc и l2server, почему?
Ну блин... Вы когда нибудь сталкивались с проблемой "достоверность информации"?
Оперативное обновление счетов и т.п.

Если Вы не можете понять как написать свой кэш, более устойчивый, я Вам помогу

БАЗА <-> КЭШ-сервер < сеть > (КЭШ-клиент <> СЕРВЕР)

Потеря соединения с базой
ФАЙЛ <канал> (КЭШ-клиент <> СЕРВЕР)

В момент восстановления подключения
КЭШ-клиент передает snapshot-ы с файла, и восстанавливается работа в штатном режиме.


Я понимаю, что все могут купить себе bugatti veyron 16.4 super sport,и забыть о быстродействии, но кто-то довольствуется ограниченными ресурсами.
Gattsu вне форума Отправить сообщение для Gattsu с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 28.11.2012, 19:34   #33
Аватар для rage
Герой

По умолчанию Re: Cashed true system

Цитата:
Сообщение от Gattsu Посмотреть сообщение
Вы понимаете, что активные сессии у вас с постоянным трафиком, тут считать не надо, возьмем даже ходьбу
персонаж перемещается на 1000 единиц его скорость 5 единиц в секунду и теперь посчитаем сколько запросов Вы совершите.
Не одного. Так как координаты персонажа сохраняются раз в n сек, и при выходе/обрыве связи с клиентом.

Цитата:
Сообщение от Gattsu Посмотреть сообщение
Заточка,подъем предмета с земли, торговля, любое изменение как так а...
А как-же монополия владения подключение с СУБД, с подключением нельзя будет работать пока его не освободят пассивный деадлок , принципы работы СУБД знакомы?
Мы то знакомы, вы похоже не очень. Про не блокирующиеся таблицы слышали? Про встроенные кеши в бд? Которые вы пытаетесь эмулировать своим кешем

Цитата:
Сообщение от Gattsu Посмотреть сообщение
Ну зачем смотреть в стену...

На PTS кэш сервер завязан вокруг npc и l2server, почему?
Ну блин... Вы когда нибудь сталкивались с проблемой "достоверность информации"?
Оперативное обновление счетов и т.п.

Если Вы не можете понять как написать свой кэш, более устойчивый, я Вам помогу

БАЗА <-> КЭШ-сервер < сеть > (КЭШ-клиент <> СЕРВЕР)

Потеря соединения с базой
ФАЙЛ <канал> (КЭШ-клиент <> СЕРВЕР)

В момент восстановления подключения
КЭШ-клиент передает snapshot-ы с файла, и восстанавливается работа в штатном режиме.


Я понимаю, что все могут купить себе bugatti veyron 16.4 super sport,и забыть о быстродействии, но кто-то довольствуется ограниченными ресурсами.
В случае с l2 сервером кеш нафиг не нужен, ANZO правильно подметил, если бы были сотни тысяч коннектов... А так, оптимизация запросов, оптимизация структуры БД и никаких проблем.
rage вне форума Ответить с цитированием
Непрочитано 28.11.2012, 20:08   #34
Аватар для Gattsu
Пользователь

По умолчанию Re: Cashed true system

Может вы про асинхронные запросы говорите или запросы без ответа?
Что-то я не наблюдал данной реализации на серверах(la2). В такой реализации у вас может получится, что-то вроде провал памяти.

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

О каком кэше Вы говорите? Уточните.

Ну если вы сделаете качественный AI то тут можно подумать, о сотнях тысяч...

кэш дает возможность подняться по уровню памяти.
Gattsu вне форума Отправить сообщение для Gattsu с помощью Skype™ Ответить с цитированием
Непрочитано 29.11.2012, 00:12   #35
Аватар для ANZO
Разработчик BDO Emu

По умолчанию Re: Cashed true system

Цитата:
Сообщение от Gattsu Посмотреть сообщение
Если Вы не можете понять как написать свой кэш, более устойчивый, я Вам помогу

БАЗА <-> КЭШ-сервер < сеть > (КЭШ-клиент <> СЕРВЕР)

Потеря соединения с базой
ФАЙЛ <канал> (КЭШ-клиент <> СЕРВЕР)
Во-первых то, о чем Вы ведете речь баянистый баян и не представляет вообще сложности в реализации. Во-вторых исходит из первого моего ответа: зачем усложнять простую подсистему (query-пул) и зачем это вообще надо в текущем сабже (л2 сервак)?


Цитата:
Сообщение от Gattsu Посмотреть сообщение
В момент восстановления подключения
КЭШ-клиент передает snapshot-ы с файла, и восстанавливается работа в штатном режиме.
И Вы всерьез считаете что постоянная запись снепшотов состояния на винт быстрее и менее ресурсоемкая отложенной записи в БД?

Цитата:
Сообщение от Gattsu Посмотреть сообщение
Блокировка вообще-то делается по ключам, блокируется отдельная запись на тот или иной запрос.
Тот же MySQL использует по-умолчанию MyISAM, который лочит всю таблицу (так же как и MEMORY с MERGE). Построчная блокировка осуществляется в механизме InnoDB.

Добавлено через 10 минут
Цитата:
Сообщение от ASevenfold Посмотреть сообщение
А вы ппишите клиент-серверные приложения специально с падениями? Если уж так говорить, то есть облачные системы виртуалок джавы, через которые можно застраховаться от падений почти на 100%. В крайнем случае к этому, существует еще и зеркалирование с разными маршрутами входов и выходов.
Бест оф зе бест, как говорится.
Не существует полностью отказоустойчивого ПО и не может существовать впринципе из-за человеческого фактора.

Цитата:
Сообщение от ASevenfold Посмотреть сообщение
Если же реально смотреть на проблему, то кешед будет очень даже полезен, хоть и по сети, а не памяти, т.к. когда я последний раз видел джава эмуль л2 с бд там был полный пипец, это было года 2 назад, мне кажется, что с тех пор мало что изменилось Овер9000 запросов на игрока, при каждом изменении данных заливка в бд, куча незакрытых коннектов, которые утекли и т.п. радости.
Так а что мешает то не сохранять сразу в базу при любом тыке персонажа? Да сколько угодно можно все держать чисто в памяти и сохранять итерационно очередями по мере работы сервера.

Последний раз редактировалось ANZO; 29.11.2012 в 00:22. Причина: Добавлено сообщение
ANZO вне форума Отправить сообщение для ANZO с помощью ICQ Отправить сообщение для ANZO с помощью Skype™ Ответить с цитированием
Непрочитано 29.11.2012, 01:14   #36
Олдфаг

По умолчанию Re: Cashed true system

Прочитал тему, думал тут тру система подъема бабла. А тут, пфф... программирование какое-то.
G1ta0 вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 29.11.2012, 01:26   #37
Аватар для izen

По умолчанию Re: Cashed true system

Ура, я откопал свой пароль.

Вставлю свои 5 копеек:
Что вы в "кешеде" кешировать собрались? Кеширование - не более чем способ отложить дорогостоящие io, в l2j это и так реализовано.

Добавлено через 3 минуты
Цитата:
Сообщение от KilRoy Посмотреть сообщение
...
Кто начинал впиливать на яве/шарпе сие независимое хранилище?!!!
...
Я, Я, Я
Пробовал STOW к l2p прикрутить. пользы 0. Самая большая проблема - предсказание, какую запись можно вытеснить с СУБД. В ладве, при разумном потреблении памяти, это сделать невозможно. Дешевле на БД сервер больше рамы подкинуть.

PS: Во многих write-back алгоритмах есть проблемы с конкаренси

Последний раз редактировалось izen; 29.11.2012 в 01:48. Причина: Добавлено сообщение
izen вне форума Ответить с цитированием
Непрочитано 29.11.2012, 01:47   #38
Аватар для Gattsu
Пользователь

По умолчанию Re: Cashed true system

Цитата:
Сообщение от ANZO
Во-первых то, о чем Вы ведете речь баянистый баян и не представляет вообще сложности в реализации. Во-вторых исходит из первого моего ответа: зачем усложнять простую подсистему (query-пул) и зачем это вообще надо в текущем сабже (л2 сервак)?
Я думаю Вы не понимаете о чем я говорю. У нас расходятся мнения и мы говорим о разном.

Цитата:
Сообщение от ANZO
И Вы всерьез считаете что постоянная запись снепшотов состояния на винт быстрее и менее ресурсоемкая отложенной записи в БД?
Не поверите, но файловые каналы быстрее, чем сетевые. Отложенная запись - отложенная.И Вы не поняли, что я имел ввиду.

Цитата:
Сообщение от ANZO
Тот же MySQL использует по-умолчанию MyISAM, который лочит всю таблицу (так же как и MEMORY с MERGE). Построчная блокировка осуществляется в механизме InnoDB.
Если в контексте одной СУБД говорить, я посмотрю на Вашу производительность, когда Вы всю базу данных в оперативную память "затолкнете" на MySQL, есть по убедительней базы данных PostgreSQL,MSSQL. И опять блокировка - это нюанс на который оперяться не стоит.

Вас должна интересовать сохранность информации. Исключить потери к минимуму, решить проблему достоверности информации.

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

Добавлено через 3 минуты
Цитата:
Сообщение от izen Посмотреть сообщение
Что вы в "кешеде" кешировать собрались?
Весь сервер.

Цитата:
Сообщение от izen Посмотреть сообщение
Кеширование - не более чем способ отложить дорогостоящие io, в l2j это и так реализовано.
Я думаю этих оснований предостаточно

Последний раз редактировалось Gattsu; 29.11.2012 в 01:51. Причина: Добавлено сообщение
Gattsu вне форума Отправить сообщение для Gattsu с помощью Skype™ Ответить с цитированием
Непрочитано 29.11.2012, 02:00   #39
Аватар для izen

По умолчанию Re: Cashed true system

Цитата:
Сообщение от Gattsu Посмотреть сообщение
Я думаю этих оснований предостаточно
Если это УЖЕ сделано, что вы делать собираетесь.

izen вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 29.11.2012, 02:05   #40
Аватар для Gattsu
Пользователь

По умолчанию Re: Cashed true system

Цитата:
Сообщение от izen Посмотреть сообщение
Если это УЖЕ сделано, что вы делать собираетесь.

Ну конечно все реализовали Вы
Gattsu вне форума Отправить сообщение для Gattsu с помощью Skype™ Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто может помочь? Первый раз ставлю сервер Grengo Серверная часть 24 10.11.2012 19:41
Ошибки сервера! zippel Lineage II 6 20.02.2011 08:52
Проблемка с Gameserver Haddaway Lineage II 36 18.02.2011 17:27
проблем с sql skil Работа со скриптами 9 23.10.2009 16:39
SQL - Вопросы и ответы Tonchi Lineage II 10 07.01.2009 00:10


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

Вверх