ProxioDev / ValioBungee

Synchronize players data between BungeeCord / Velocity proxies
Eclipse Public License 1.0
200 stars 51 forks source link

redis cluster support? #21

Closed deltaflyer4747 closed 2 years ago

deltaflyer4747 commented 2 years ago

Would it be possible to get redis cluster support? Because using single redis server is SPOF and setting redis cluster is SO easy since it is built-in...

below is snipplet from log when trying to connect to clustered redis.

[01:59:07 WARN]: Exception encountered when loading plugin: RedisBungee
com.imaginarycode.minecraft.redisbungee.internal.jedis.exceptions.JedisMovedDataException: MOVED 15771 176.9.126.234:6379
        at com.imaginarycode.minecraft.redisbungee.internal.jedis.Protocol.processError(Protocol.java:119) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.internal.jedis.Protocol.process(Protocol.java:169) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.internal.jedis.Protocol.read(Protocol.java:223) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.internal.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:352) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.internal.jedis.Connection.getIntegerReply(Connection.java:294) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.internal.jedis.Jedis.hexists(Jedis.java:965) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.RedisBungee.loadConfig(RedisBungee.java:482) ~[?:?]
        at com.imaginarycode.minecraft.redisbungee.RedisBungee.onEnable(RedisBungee.java:247) ~[?:?]
        at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:315) ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
        at net.md_5.bungee.BungeeCord.start(BungeeCord.java:290) ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
        at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:67) ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
        at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) ~[BungeeCord.jar:git:Waterfall-Bootstrap:1.17-R0.1-SNAPSHOT:306121c:449]
ham1255 commented 2 years ago

Redis bungee by design does not support cluster, also if we intend to do it and support all redis configurations, like sentinel, cluster, single instance it will break most of the plugins the rely on getting the jedis instance or even.

this fork is intended to keep old plugins working.

ham1255 commented 2 years ago

this being added now after change of internals.

ham1255 commented 2 years ago

the reason i closed this as wont fix due, how RedisBungee was built around use JedisPool in the code, with internal changes to support the velocity proxy this made it possible.