1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Как сделать что бы информация была всегда актуальна на разных серверах

Тема в разделе "Разработка плагинов для новичков", создана пользователем Cristalix, 8 фев 2020.

Метки:
  1. Автор темы
    Cristalix

    Cristalix Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Test
    Здравствуйте. Появился вопрос. У меня есть несколько bukkit серверов и bungeecord. Все они берут данные из одной единой базы. Данные которые используют сервера может изменяться в любой момент из любого места. И как только она измениться bukkit сервера и bungeecord в зависимости от новых данных в базе данных должны работать по другому. Вопрос каким образом можно сделать что бы при изменений в базе данных записи она сразу же обновлялась на всех серверах? И да, количество данных очень большое и хранить их в в кеше все время не вариант. Так же нужно что бы получить новую актуальную информацию можно было в кратчайшие сроки(что бы запрос в бд допустим не занимал более секунды).
     
  2. NukerFall

    NukerFall Активный участник Пользователь

    Баллы:
    76
    plugin-messages
    MySql
    или тепе плагины?
     
  3. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Для таких задач хватит простого rcon.
     
  4. TrashCode

    TrashCode Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    TrashCode
    Даже интересно, насколько "количество данных очень большое"
     
  5. FeniksDEV

    FeniksDEV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Feniksovich
    Не особо понятно, что вы собираетесь синхронизировать и "держать в актуальном состоянии". Если требуется высокопроизводительная БД для обмена данными в виде JSON - то вам к Redis, если нет - MariaDB.

    Чтобы данные были одни и те же в актуальном состоянии на каждом сервере, достаточно подключить их к одной БД. При этом (если изменения выполняются вручную) мб будет требоваться "пинать" сервер с BungeeCord, условно, ping запросом, чтобы они получили актуальные данные из БД или задавать интервал синхронизации с БД (в этом случае получать измененные данные в ту же секунду не получится).
     
  6. Автор темы
    Cristalix

    Cristalix Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Test
    Можете ли вы объяснить, почему именно Redis или же MariaDb? Чем они хороши и в каких случаях?
     
  7. NukerFall

    NukerFall Активный участник Пользователь

    Баллы:
    76
    MariaDB - просто форк MySQL с кучей оптимизации, но без поддержки JSON(пока)
     
  8. FeniksDEV

    FeniksDEV Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Feniksovich
    Redis сама по себе как разработка является высокоскоростной базой данных, предназначенной для, кратко говоря, обмена ключей. Ключ представляет собой данные в JSON формате, что позволяет в одном ключе хранить несколько значений.

    Если требуется связать несколько серверов, которые находятся на разных машинах, то Redis использовать нецелесообразно. Поскольку он является высокоскоростным, то и брутоспособен он на столько же. Соответственно, лучше не давать ему выходить в сеть и биндить по локальному адресу.

    https://ru.wikipedia.org/wiki/Redis
    https://aws.amazon.com/ru/redis/

    Использование MariaDB - более традиционный способ связать сервера, работает тоже достаточно быстро и, я думаю, вполне годится для вашей задачи.
     
    Последнее редактирование: 9 фев 2020
  9. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    MySQL как бы тоже не стоит на месте и развивается. Так что поспорил бы. И все тесты древней давности в тырнете.
     
  10. NukerFall

    NukerFall Активный участник Пользователь

    Баллы:
    76
    Просто мария обновляется чаще и там полный опенсурс
     
  11. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Тупо из за сурсов? Ну такое себе в качестве агрумента. Вы же все равно не осилите что то там переписать.
     

Поделиться этой страницей