我是靠谱客的博主 朴实电话,最近开发中收集的这篇文章主要介绍sftp get服务器无文件会抛异常,jsch连接sftp后连接未释放掉问题排查,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

项目中通过jsch中的sftp实现上传下载文件。在压测过程中,由于调用到sftp,下载文件不存在时,系统不断抛出异常,内存飙升,逐渐把swap区也占满,通过top监控未发现占用内存的进程,通过查找sshd进程,发现服务器多了很多sftp的进程没有被关闭。

e44cf4531587e697e2d03d3b4b4acc5c.png

刚开始以为是sftp公共方法设计的有问题,每次创建连接都未释放,下面是部分代码片段

@Repository("SftpClient")

public class SftpClient {

private Logger logger = LoggerFactory.getLogger(SftpClient.class);

private ThreadLocal sessionLocal = new ThreadLocal();

private ThreadLocal channelLocal = new ThreadLocal();

//初始化连接

public SftpClient init() {

try {

String host = SFTP_HOST;

int port = Integer.valueOf(SFTP_PORT);

String userName = SFTP_USER_NAME;

String password = SF

最后

以上就是朴实电话为你收集整理的sftp get服务器无文件会抛异常,jsch连接sftp后连接未释放掉问题排查的全部内容,希望文章能够帮你解决sftp get服务器无文件会抛异常,jsch连接sftp后连接未释放掉问题排查所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部