Пример #1
0
  public void redis(String host) {
    if (context.isTest()) {
      logger.info("use local session during test");
      local();
    } else {
      logger.info("create redis session provider, host={}", host);

      RedisImpl redis = new RedisImpl();
      redis.host(host);
      redis.pool.name("redis-session");
      context
          .scheduler()
          .addTrigger(
              new FixedRateTrigger(
                  "refresh-redis-session-pool",
                  new RefreshPoolJob(redis.pool),
                  Duration.ofMinutes(5)));

      context.shutdownHook.add(redis::close);
      context.httpServer.siteManager.sessionManager.sessionStore(new RedisSessionStore(redis));
    }
  }