как сделать недействительными сессии в пристани Hazelcast? - PullRequest
0 голосов
/ 29 ноября 2018

Я использую hazelcast 3.6.3 в пристани 9.4.8 для репликации сеансов, и мы хотели бы сделать недействительными несколько сеансов на основе отдельного сообщения JMS.

конфигурация hazelcast (с использованием zookeeper для обнаружения одноранговых узлов)

Config config = new Config();
    config.setInstanceName(HAZELCAST_INSTANCE_NAME);
    // logger config
    config.setProperty("hazelcast.logging.type", "slf4j");
    // config for session map
    MapConfig sessionMapConfig = new MapConfig();
    sessionMapConfig.setName(SESSION_MAP_NAME)
            .setBackupCount(2);
    config.addMapConfig(sessionMapConfig);
    // peer discovery with zookeeper
    config.getNetworkConfig().getJoin().getMulticastConfig().setEnabled(false);
    config.setProperty(GroupProperty.DISCOVERY_SPI_ENABLED, "true");

    DiscoveryStrategyConfig discoveryStrategyConfig = new DiscoveryStrategyConfig(new ZookeeperDiscoveryStrategyFactory());
    discoveryStrategyConfig.addProperty(ZookeeperDiscoveryProperties.ZOOKEEPER_URL.key(), serviceDiscoveryNode);
    discoveryStrategyConfig.addProperty(ZookeeperDiscoveryProperties.ZOOKEEPER_PATH.key(), "sessionstore/APP");
    discoveryStrategyConfig.addProperty(ZookeeperDiscoveryProperties.GROUP.key(), "cluster-name");
    config.getNetworkConfig().getJoin().getDiscoveryConfig().addDiscoveryStrategyConfig(discoveryStrategyConfig);

в задании, которое я назвал

Session session = sessionHandler.getSession(id);
session.invalidate(); // or sessionHandler.invalidate(id)

, но это не делает сеанс недействительным во всех экземплярах.Почему это так?

нам нужно аннулировать сеанс во всех экземплярах?

...