Class ServerCnxnFactory

    • Constructor Detail

      • ServerCnxnFactory

        public ServerCnxnFactory()
    • Method Detail

      • addSession

        public void addSession​(long sessionId,
                               ServerCnxn cnxn)
      • removeCnxnFromSessionMap

        public void removeCnxnFromSessionMap​(ServerCnxn cnxn)
      • closeSession

        public boolean closeSession​(long sessionId,
                                    ServerCnxn.DisconnectReason reason)
        Returns:
        true if the cnxn that contains the sessionId exists in this ServerCnxnFactory and it's closed. Otherwise false.
      • getLocalPort

        public abstract int getLocalPort()
      • getNumAliveConnections

        public int getNumAliveConnections()
      • getMaxClientCnxnsPerHost

        public abstract int getMaxClientCnxnsPerHost()
        Maximum number of connections allowed from particular host (ip)
      • setMaxClientCnxnsPerHost

        public abstract void setMaxClientCnxnsPerHost​(int max)
        Maximum number of connections allowed from particular host (ip)
      • isSecure

        public boolean isSecure()
      • getSocketListenBacklog

        public abstract int getSocketListenBacklog()
        The maximum queue length of the ZooKeeper server's socket
      • shutdown

        public abstract void shutdown()
      • start

        public abstract void start()
      • setZooKeeperServer

        public final void setZooKeeperServer​(ZooKeeperServer zks)
      • resetAllConnectionStats

        public abstract void resetAllConnectionStats()
      • unregisterConnection

        public void unregisterConnection​(ServerCnxn serverCnxn)
      • registerConnection

        public void registerConnection​(ServerCnxn serverCnxn)
      • configureSaslLogin

        protected void configureSaslLogin()
                                   throws IOException
        Initialize the server SASL if specified. If the user has specified a "ZooKeeperServer.LOGIN_CONTEXT_NAME_KEY" or a jaas.conf using "java.security.auth.login.config" the authentication is required and an exception is raised. Otherwise no authentication is configured and no exception is raised.
        Throws:
        IOException - if jaas.conf is missing or there's an error in it.
      • getUserName

        public static String getUserName()
        User who has started the ZooKeeper server user, it will be the logged-in user. If no user logged-in then system user
      • getMaxCnxns

        public int getMaxCnxns()
        Maximum number of connections allowed in the ZooKeeper system
      • initMaxCnxns

        protected void initMaxCnxns()
      • limitTotalNumberOfCnxns

        protected boolean limitTotalNumberOfCnxns()
        Ensure total number of connections are less than the maxCnxns