Package org.apache.zookeeper.server
Class ServerCnxnFactory
java.lang.Object
org.apache.zookeeper.server.ServerCnxnFactory
- Direct Known Subclasses:
NettyServerCnxnFactory
,NIOServerCnxnFactory
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Set
<ServerCnxn> protected int
protected SaslServerCallbackHandler
protected boolean
protected ZooKeeperServer
static final int
static final String
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addSession
(long sessionId, ServerCnxn cnxn) abstract void
closeAll
(ServerCnxn.DisconnectReason reason) boolean
closeSession
(long sessionId, ServerCnxn.DisconnectReason reason) void
configure
(InetSocketAddress addr, int maxcc) void
configure
(InetSocketAddress addr, int maxcc, int backlog) abstract void
configure
(InetSocketAddress addr, int maxcc, int backlog, boolean secure) protected void
Initialize the server SASL if specified.static ServerCnxnFactory
static ServerCnxnFactory
createFactory
(int clientPort, int maxClientCnxns) static ServerCnxnFactory
createFactory
(int clientPort, int maxClientCnxns, int backlog) static ServerCnxnFactory
createFactory
(InetSocketAddress addr, int maxClientCnxns) static ServerCnxnFactory
createFactory
(InetSocketAddress addr, int maxClientCnxns, int backlog) getAllConnectionInfo
(boolean brief) abstract Iterable
<ServerCnxn> abstract InetSocketAddress
abstract int
abstract int
Maximum number of connections allowed from particular host (ip)int
Maximum number of connections allowed in the ZooKeeper systemint
abstract int
The maximum queue length of the ZooKeeper server's socketstatic String
User who has started the ZooKeeper server user, it will be the logged-in user.final ZooKeeperServer
protected void
boolean
isSecure()
abstract void
join()
protected boolean
Ensure total number of connections are less than the maxCnxnsabstract void
reconfigure
(InetSocketAddress addr) void
registerConnection
(ServerCnxn serverCnxn) void
abstract void
abstract void
setMaxClientCnxnsPerHost
(int max) Maximum number of connections allowed from particular host (ip)final void
abstract void
shutdown()
abstract void
start()
void
startup
(ZooKeeperServer zkServer) abstract void
startup
(ZooKeeperServer zkServer, boolean startServer) void
unregisterConnection
(ServerCnxn serverCnxn)
-
Field Details
-
ZOOKEEPER_SERVER_CNXN_FACTORY
- See Also:
-
ZOOKEEPER_MAX_CONNECTION_DEFAULT
public static final int ZOOKEEPER_MAX_CONNECTION_DEFAULT- See Also:
-
secure
protected boolean secure -
maxCnxns
protected int maxCnxns -
saslServerCallbackHandler
-
login
-
zkServer
-
cnxns
-
-
Constructor Details
-
ServerCnxnFactory
public ServerCnxnFactory()
-
-
Method Details
-
addSession
-
removeCnxnFromSessionMap
-
closeSession
- Returns:
- true if the cnxn that contains the sessionId exists in this ServerCnxnFactory and it's closed. Otherwise false.
-
getLocalPort
public abstract int getLocalPort() -
getConnections
-
getNumAliveConnections
public int getNumAliveConnections() -
getZooKeeperServer
-
configure
- Throws:
IOException
-
configure
- Throws:
IOException
-
configure
public abstract void configure(InetSocketAddress addr, int maxcc, int backlog, boolean secure) throws IOException - Throws:
IOException
-
reconfigure
-
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() -
startup
- Throws:
IOException
InterruptedException
-
startup
public abstract void startup(ZooKeeperServer zkServer, boolean startServer) throws IOException, InterruptedException - Throws:
IOException
InterruptedException
-
getSocketListenBacklog
public abstract int getSocketListenBacklog()The maximum queue length of the ZooKeeper server's socket -
join
- Throws:
InterruptedException
-
shutdown
public abstract void shutdown() -
start
public abstract void start() -
setZooKeeperServer
-
closeAll
-
createFactory
- Throws:
IOException
-
createFactory
public static ServerCnxnFactory createFactory(int clientPort, int maxClientCnxns) throws IOException - Throws:
IOException
-
createFactory
public static ServerCnxnFactory createFactory(int clientPort, int maxClientCnxns, int backlog) throws IOException - Throws:
IOException
-
createFactory
public static ServerCnxnFactory createFactory(InetSocketAddress addr, int maxClientCnxns) throws IOException - Throws:
IOException
-
createFactory
public static ServerCnxnFactory createFactory(InetSocketAddress addr, int maxClientCnxns, int backlog) throws IOException - Throws:
IOException
-
getLocalAddress
-
resetAllConnectionStats
public abstract void resetAllConnectionStats() -
getAllConnectionInfo
-
unregisterConnection
-
registerConnection
-
configureSaslLogin
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
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
-