Я пытался подписаться на порт с помощью брокера сообщений redis на моем локальном хосте. Я использую для этого jedis api.
Когда я пытаюсь подключиться, я все время получаю сообщение об ошибке connection refused
. Я попробовал 5 разных портов, которые должны быть свободными, и попытался использовать в качестве имени хоста как «localhost», так и «0.0.0.0».
Вот что я пробовал:
private static final int PORT = 25564;
private static final String HOST = "0.0.0.0";
private Jedis jedis = new Jedis(HOST,PORT);
private JedisPubSub arenaEventHandler = new JedisPubSub() {
@Override
public void onMessage(String channel, String message) {
getLogger().info("received message on " + channel + ": " + message);
}
};
private void setupArenaSubscription(){
getProxy().getScheduler().runAsync(this, () -> {
try {
jedis.psubscribe(arenaEventHandler, "ARENA*");
getLogger().info("Subscription ended.");
} catch (Exception e) {
getLogger().log(Level.SEVERE,"Subscribing failed.", e);
}
});
}
Как Вы можете видеть, что я также использую API BungeeCord, но это не должно влиять на соединение.
Ошибка возникает в блоке try-catch, когда я вызываю pSubscribe
. Надеюсь, что кто-нибудь сможет мне помочь с этой проблемой.