sftp没有关闭session导致服务器sshd进程未关闭
来源:互联网 发布:智慧与大数据考试答案 编辑:程序博客网 时间:2024/05/17 07:35
项目中需要用Sftp上传下载文件,通过jsch中的sftp实现。代码上了服务器之后,发觉服务器多了很多进程没有被关闭。
连接sftp代码:
protected boolean connectToServer() { try { JSch jsch = new JSch(); jsch.getSession(userName, hostname, port); Session sshSession = jsch.getSession(userName, hostname, port); logger.debug("HostName:" + hostname + "|Port:" + port); logger.debug("Session created"); sshSession.setPassword(password); Properties sshConfig = new Properties(); sshConfig.put("StrictHostKeyChecking", "no"); sshSession.setConfig(sshConfig); sshSession.setTimeout(TIMEOUT); //ms sshSession.connect(); sftp = (ChannelSftp) sshSession.openChannel("sftp"); sftp.connect(); if (!sftp.isConnected()) { logger.error("Failed to connect FTP server " + hostname); return false; } logger.debug("Username:" + userName + "|Password:" + password); } catch (Exception ex) { logger.error(ex); } return true; }
其实每次执行完都会
sftp.quit();
sftp.disconnet();
但是进程还是在,后来觉得应该是session没有关闭。后来证明的确是这样的,虽然sftp退出了,但是session还是存在的。解决办法很简单,只要在sftp.quit()
之前加上 sftp.getSession().disconnect()
就可以了。
0 0
- sftp没有关闭session导致服务器sshd进程未关闭
- HibernateDaoSupport 类session未关闭导致的连接泄露问题
- JAVA程序,SESSION没有关闭导致数据库异常
- 输入输出流未关闭导致结果
- opendir 未关闭导致内存泄露
- 数据库未关闭导致的故障分析
- Myeclipse异常关闭,导致Tomcat未关闭[未完成]
- 在mac系统下用eclipse未正常关闭tomcat导致进程被占用
- NioSocketConnector没有关闭导致文件打开太多
- j2ee容器服务关闭进程未杀掉
- 非正常关闭服务器导致的
- 服务端 write时,收到RST响应(对端socket中断),导致服务器进程关闭
- 程序关闭进程没有退出的问题
- 关闭winform程序,没有任何残留进程
- Inputstream 文件流未关闭导致的异常
- 未关闭防火墙导致tomcat启动后访问无响应
- jdbc操作未关闭连接导致web程序假死
- android studio 未关闭就关机导致工程不能识别
- VM下Centos7安装nginx服务
- Unity3d 调用Application.loadlevel()后光照变暗
- 简单的json解析工具
- 【POJ】-3620-Avoid The Lakes(DFS)
- hdoj 1010 <dfs剪枝>
- sftp没有关闭session导致服务器sshd进程未关闭
- 【Sql server: T-Sql 技术内幕 系列】之索引篇
- wget 下载整个网站,或者特定目录
- EditText辅助控件—TextInputLayout
- chrome input输入框黄色背景去除
- 给职场新人的10点职涯建议
- 97.Which statement is true about loading data using the conventional path of SQL*Loader?
- Ubunut服务器搭建Node服务
- apache2.2 prefork模式优化