GiganticMinecraft / BungeeSemaphore

A BungeeCord plugin for controlling access to data shared among downstream servers
MIT License
1 stars 0 forks source link

Make Redis the single source of truth #5

Closed kory33 closed 3 years ago

kory33 commented 3 years ago

Currently we have set up BungeeCord-local locks to see if the players are connected or are able to connect. The local state that tells if a player can join, called GlobalLock, is supposed to be synchronized amongst all instances of BungeeSemaphore by means of pub/sub communications through Redis.

This makes scaling in/out difficult, especially when BungeeCord processes are managed through orchestration tools such as k8s.

The aim of this issue is to consider moving all the states to a single Redis instance, and to see its consequences.

kory33 commented 3 years ago

ed789bbe implements this.