Работа с базой данных для Л2

  • Автор темы Автор темы Shakaho
  • Дата начала Дата начала

Shakaho

Пляшущий с бубном
Местный
Уважаемый собеседник
За знание ядра
За знание датапака
Разработчик
Сообщения
352
Розыгрыши
0
Решения
1
Репутация
249
Реакции
431
Баллы
288
Хроники
  1. Shadow of the Kamael
  2. Prelude Of War
  3. Homunculus
Исходники
Присутствуют
Сборка
Mobius
Доброго вечера. Ковыряю сервер л2 - в нем (по стандарту) MySQL. Думаю на полный переход в сторону PostgreSQL. Что скажете, стоит ли того?
 
Последнее редактирование:
Делаешь так
1784065760566.webp
1784065788902.webp
А потом просто меняешь диалекты как тебе больше нравится)
 
главное не забывайте про многопоток и триды, а так хоть в тхт храните)))
 
перешел на postgresql, был опыт "боевого" крещения на онлайне около 300, по мониторингу выглядело сильно интереснее и запросы работали куда лучше

из минусов, с которыми столкнулся лично я - тип varchar в mysql и в postgresql имеют немного разную структуру по дефолту, поэтому надо слегка доработать напильником

процедуры (если они используются) - работают только на апдейт данных, для select конечно можно сделать, но того не стоит
 
перешел на postgresql, был опыт "боевого" крещения на онлайне около 300, по мониторингу выглядело сильно интереснее и запросы работали куда лучше

из минусов, с которыми столкнулся лично я - тип varchar в mysql и в postgresql имеют немного разную структуру по дефолту, поэтому надо слегка доработать напильником

процедуры (если они используются) - работают только на апдейт данных, для select конечно можно сделать, но того не стоит
Когда базу конвертировал и запускал сервер уже ощутил проблемы с записью. Решил.
 
А есть ли смысл? По моему mysql в плане производительности хватает за глаза даже при приличном онлайне.

В большинстве сборок проблемы скорости в работе с базой растут скорее из кривизны рук того, кто пишет код взаимодействующий с БД.
Много где к примеру кладут на те же кэширование считываемых данных или на "ленивые" вставки/апдейты и вместо этого на каждый чих лезут в базу с чтениями/записями, а потом еще и удивляются - чего у них все лагает и тормозит даже при мизерном онлайне.
 
Последнее редактирование:
PostgreSQL конечно уделывает MySQL во многих бенчмарках на больших комплексных запросах, хотя MySQL и остается быстрее на простых операциx чтения. Но на тех обьемах данных которыми оперирует игровой сервер л2 и примитивности запросов - вы врядли заметите какую-нибудь разницу, к тому же упор идет на кеширование.

В образовательных целях можете хоть SQLite воткнуть, как некоторые умельцы на этом форуме, с практической точки зрения продакшн-подхода это врядли имеет какой-то смысл
Вообще подход работы с базой у сервера л2 хорошо ложится на использование орм или либ запросо-генерации (как приводили пример выше), что даст возможность использования разных бд, меняя провайдер. Бонусом можно получить наглядную обьектную модель, механизмы генерации миграций
 
Всем спасибо за сообщения, особенно Logan22 , Lacost , lvlkoo и Gaikotsu . Черпнул полезного от вас. Буду ковырять и разбираться дальше.
 
Назад
Сверху Снизу