Skip to content
William edited this page Jul 11, 2022 · 15 revisions

HuskSync banner

Frequently Asked Questions

This page addresses a number of frequently asked questions about the plugin.

FAQs

Is Redis required? What is Redis?

HuskSync requires Redis to operate (for reasons demonstrated below). Redis is an in-memory database server used for caching data at scale and sending messages across a network. You have a Redis server in a similar fashion to the way you have a MySQL database server. If you're using a Minecraft hosting company, you'll need to contact their support and ask if they offer Redis.

How does the plugin synchronise data?

System diagram

HuskSync makes use of both MySQL and Redis for optimal data synchronisation.

When a user changes servers, in addition to data being saved to MySQL, it is also cached via the Redis server with a temproary expiry key. When changing servers, the receiving server detects the key and sets the user data from Redis. When a player rejoins the network, the system fetches the last-saved data snapshot from the MySQL Database.

This approach is able to dramatically improve both synchronisation performance and reliability. A few other techniques are used to optimize this process, such as comrpessing the serialized user data json using Snappy.

Is this better than MySQLPlayerDataBridge?

I can't provide an unbiased answer to this question! What I can say is that your mileage may vary. The performance improvements offered by HuskSync's synchronisation method will depend on your network environment and the economies of scale that come with your player count.

A migrator from MPDB is built-in to HuskSync.

Setup

Features

Guides

Developers

Links

Clone this wiki locally