JSch 未关闭 sshd
有谁见过 JSch 在哪里打开 sshd 会话吗?
我有一个 java 客户端,它执行常规 SFTP 连接(每隔一小时轮询一次),并且它似乎留下了 sshd 会话。随着时间的推移,这些问题最终会累积起来,导致我们在操作系统中出现“打开太多文件”异常(对于那些感兴趣的人来说,它达到了每个进程的限制(1024))。
在我的客户端中,我关闭 SFTPChannel,然后关闭通道(实际上是多余的,因为关闭 SFTPChannel 会关闭通道),最后关闭会话,所以我很确定我正在正确清理(并且我可以看到我有一个“断开连接”)对于每个“连接”,所以他们确实结婚了)
Has anyone seen where JSch leaves sshd sessions open?
I've got a java client which performs regular SFTP connections (it polls every one hour) and it seems to leave behind a sshd session. These eventually build up over time and causes us to have a "too many files open" exception in the OS (it hits the limit per process(1024) for those who are interested).
In my client I close the SFTPChannel, then the Channel (redundant really as closing the SFTPChannel closes the Channel) and lastly the Session, so I'm pretty sure I'm cleaning up correctly (and I can see I have a 'disconnect' for each 'connect', so they do marry up)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
请参考 jsch- 的邮件线程用户 ML,
该问题是由旧版 OpenSSH 的 sshd 中的错误引起的。
最近的 OpenSSH 已经修复了这个问题。
Please refer to a mail thread of jsch-users ML,
That problem has been caused by a bug in older OpenSSH's sshd.
The recent OpenSSH has fixed it.