Дружище элементарный примерДавайте определим о чем мы ведем беседу. Я не против того что нужно будет поддерживать другие БД. Сейчас поддерживается SQLite как главная база данных. Поддержка SQLite без особых библиотек вот-вот уже почти готовa в Nodejs.
Если вы про то что вы хотите сопоставить соединение БД и RPC на игровом сервере, это нужно детально смотреть сколько и какие запросы будут. Это совершеннo другая проблема чем просто имитировать соединение к БД. На Яве это использовалось лишь потому чтo никто, нигдe не захотел по другому сделать. Вот и все. Это застой. Но людям как вы и напомнили это все комфортно.
Вы просто хотите каким-то образом быть правы или у вас ест другие факты которые могут подтвердить такое будущее?
Какую интересно ?))))SQLite отличная, удобная, крайне быстрая база данных, проверенная временем.
И к ней вполне можно организовать доступ извне через простейшую прослойку в самом сервере.
Прекрасно. Замените подключение БД на RPC (что и в принципе так и работает по бинарному протоколу) с использованием JSON-а. Какое различие будет?Дружище элементарный пример
Платежная система отправила на сайт сервера вебхук/коллбэк
Сайт принял коллбэк теперь Нада отправить итемы персу, в итоге что?)) нихера нет подключения к SQLite
Либо элементарно вывести top pvp на сайте или регистрацию сделать
Вы частично правы о том как все работает. Я говорю не o том что-бы изменить ваше мнение. Скорее я могу найти ситуацию когда нужно сделать то что вы хотите: отделенную БД от серверов.Дружище элементарный пример
Платежная система отправила на сайт сервера вебхук/коллбэк
Сайт принял коллбэк теперь Нада отправить итемы персу, в итоге что?)) нихера нет подключения к SQLite
как будешь бороться с параллельными запросами? Либо с высокой нагрузкой?Вы частично правы о том как все работает. Я говорю не o том что-бы изменить ваше мнение. Скорее я могу найти ситуацию когда нужно сделать то что вы хотите: отделенную БД от серверов.
Если есть много серверов и не понятно где и какие акаунты у нас содержат персонажей с определенным именем. Тогда да, намного проще дать внешний доступ к БД и сказать что сервис (оплаты а не сам игровой сервер) может каким-то образом понять где и как нужно править данные. Это решение, но одно из множества возможных. По другому можно сделать так что если мы знаем как подсоединиться к всем игровым серверам, можно просто запросить где и как персонаж для акаунта находиться ну и потом просто послать запрос в формате MessagePack текстовый JSON (это реализация RPC на Lineage2TS сервере сейчас).
Я кстати использую RPC соединение для пересылки административных команд на сервер для определенных персонажей (много уровней настройки как и блокировки по уровню админа, так что это не просто открытый доступ по типу L2J telnet) при тестировании. Тo есть когда тестируется функциональность обычных игроков, при этом будут тестироваться административные комманды. Это при том что есть различные виды запросов RPC, так что написание новых видов достаточно просто интегрировать в уже готовые системы. Но самое главное что это все работает, и очень быстро. Я тестировал например 96 паралельных соединений от клиентов, все работает. Все тесты проходят. Но самое главное что я не видел что-бы сервер нагружался более 1-2%. Так что нужно просто определить что решается и как можно это все реализовать.
Отвечу по порядку на вопросы.как будешь бороться с параллельными запросами? Либо с высокой нагрузкой?
Как будешь связывать 2 и более сервера?
На самом деле всё проще, не нужно чтоб что-то посторонне лезло в бд игровую .Дружище элементарный пример
Платежная система отправила на сайт сервера вебхук/коллбэк
Сайт принял коллбэк теперь Нада отправить итемы персу, в итоге что?)) нихера нет подключения к SQLite
Либо элементарно вывести top pvp на сайте или регистрацию сделать
Буду делать. У меня уже есть наработки что-бы автоматизировать запуск контейнера сервера на Portainer, нужно просто раширить некоторые функциональные параметры. Сейчас я уже использую мои наработки как раз в тестировании сервера. То есть сначала контейнер замещается на отдельном компьютере на локальной сети на котором уже стоит Portainer, a потом начинается тестирование.Спасибо за ваши труды.
Не затруднит ли вас выкатить мануал по запуску с использованием portainer, а также настройкой сервера для подключения с другого пк в локальной сети?
Будь уверен не сменит. Ничто в жизни не способно изменить его решение. Он будет черпать говно цистернами и костылить в три слоя, но останется верен SQLite. Главное же, что сервер запускается за 5 сек.Не принуждаю, но уверенно скажу что вы поменяете СУБД ))
ваще эти ваши sql-лайты - путь лоха! всё над держать в текстовичках, как тарищиБудь уверен не сменит. Ничто в жизни не способно изменить его решение. Он будет черпать говно цистернами и костылить в три слоя, но останется верен SQLite. Главное же, что сервер запускается за 5 сек.
да никто его не хейтит, в свободной стране живем, че хочет то и выбирает, захочет - вообще в текстовики сохранять будет, никого не должно касаться как человек фан получает от этой жизни, если это законноТак а за что вы его хейтите? Ну удобно челу прототипировать движок на SQLite. 3.14здец проблема базу поменять? Код опенсорсный, никто не запрещает вам допилить туда любой SQL движок, через слои совместимости. Хейтить за выбор движка бд, максимально тупая хуета, какую можно придумать.
Ну почему, если внести изменение в БД и ребутнуть сервак вместе с CacheD, то изменения применятся )На птсе используется подход через CacheD сервер. Почти любые изменеия бд никак не отражаются на рабочем сервере. Хочешь добавить что - то в бд? Используй запросы к кешеду
Не в этом дело немного. Ему говорят что SQLite не подойдет для лайв проекта. А он говорит, что щас десяток костылей сделает и все будет работать окей. Не будет. Как не крути, но очередь на запись при большом онлайне будет заметна в игре.Так а за что вы его хейтите? Ну удобно челу прототипировать движок на SQLite. 3.14здец проблема базу поменять? Код опенсорсный, никто не запрещает вам допилить туда любой SQL движок, через слои совместимости. Хейтить за выбор движка бд, максимально тупая хуета, какую можно придумать.
Почему не будет? Давайте поговорим о фактах.Не в этом дело немного. Ему говорят что SQLite не подойдет для лайв проекта. А он говорит, что щас десяток костылей сделает и все будет работать окей. Не будет. Как не крути, но очередь на запись при большом онлайне будет заметна в игре.
Ты все про теорию говоришь. В каком количестве будут сыпать в базу insert при фармящих 500 человек. Возможно со всеми хитростями крихтя пердя и задыхаясь выдержит, но что делать с онлайном 1к+? А на старте? Когда из этой 1000 не на трейде половина, а постоянно фармит и получает/расходует предметы.Почему не будет? Давайте поговорим о фактах.
Хорошие вопросы. Фактов нет, одни теории (не я про это начал).Ты все про теорию говоришь. В каком количестве будут сыпать в базу insert при фармящих 500 человек. Возможно со всеми хитростями крихтя пердя и задыхаясь выдержит, но что делать с онлайном 1к+? А на старте? Когда из этой 1000 не на трейде половина, а постоянно фармит и получает/расходует предметы.
Если она такая удобная и звездатая то почему никто в мире не использует её для нагруженных проектов? Задумайся. Есть случаи использования SQLite, но только в связке с полноценной БД.
В дефолтной ява-сборке 80% кодовой базы не подходит для лайв проекта. При этом, никому это не мешает открываться и пилить фиксы по факту, не занимаясь излишней оптимизацией там, где этого не требуется.Ему говорят что SQLite не подойдет для лайв проекта.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?