1
A
回答
4
我认为你可以使用ChannelGroup来保持连接的轨迹。根据channelGroup的内容,制定有关限制连接的决定。请参阅下面的代码片段。添加到channelGroup中的所有通道在关闭时会自动删除。
class YourHandler extends SimpleChannelHandler {
ChannelGroup channelGroup = new DefaultChannelGroup();
@Override
public void channelOpen(ChannelHandlerContext ctx, ChannelStateEvent e)
{
// make a decision if you want to accept connection
// if not just close it using ctc.getChannel().close()
}
@Override
public void channelConnected(ChannelHandlerContext ctx, ChannelStateEvent e)
{
channelGroup.add(ctx.getChannel());
}
}
相关问题
- 1. Netty客户端连接
- 2. javax.mail.MessagingException的无法连接到SMTP主机:主机名端口:25回复:552
- 3. 通过主机名连接
- 4. 如何在java中获取连接客户端的主机名?
- 5. mysql客户端连接主机名问题
- 6. 将主机名传递给netty
- 7. 如何在c#和asp.net中获取客户端主机名,本地计算机名称和用户名
- 8. 以strus2格式获取客户端的用户名和主机名
- 9. Javascript Vert.x EventBus客户端SockJS获取连接的主机和端口
- 10. 用的用户名密码和主机
- 11. Windows DHCP客户端主机名编码
- 12. 如何使用主机名和端口远程访问myphpadmin 8080
- 13. Netty客户端不会连接
- 14. JDBC忽略连接到本地主机的用户名
- 15. 根据主机名分支OWIN管道
- 16. .htaccess根据主机名设置PHP值
- 17. 根据主机名更改div css
- 18. ssh:连接到主机heroku.com端口22:没有路由主机
- 19. Java服务器客户端和主机名称计算机
- 20. 本地主机 - 根连接
- 21. 根据登录的用户使用不同的连接名称
- 22. 如何从远程主机连接到Tor控制端口(9051)?
- 23. 将域名连接到主机
- 24. 从webservice中检索客户端用户名和计算机名
- 25. ssh:连接到主机github.com端口22:连接超时
- 26. 多个主机名和多个权限?
- 27. 如何使用给定的主机和端口连接到amazon aws数据库
- 28. 如何实现Java RMI以获取未连接的客户端ip /主机名
- 29. C++ Pipe [如何获取连接客户端的IP地址或主机名。]
- 30. 如何查找ChannelGroup中从特定主机名连接的所有客户端
今天研究了'ChannelGroup'代码后,我相信我应该保留映射到通道组的通道组名称的映射(基于用户名)。即'ConcurrentHashMap'。通过这种方式,我可以在逻辑上将所有连接到特定用户名的通道分组。然后,我可以通过用户名参考每个组,并查找相应的计数。这听起来合理吗? –
2012-04-17 19:43:45
是的,这是绝对合理的。 – 2012-04-17 21:45:22