並發下sftp連接報錯——com.jcraft.jsch.JSchException: connection is closed by foreign host


當對單接口極限測試時,隨着並發量上升,接口穩定性出現不穩定的情況,排查后台日志,發現報錯在該接口調用sftp上傳時出現問題(確切的是在初始化連接時失敗)

原因:系統SSH終端連接數配置過小,查看虛擬機該參數(該參數在/etc/ssh/sshd_config中配置,為MaxStartups),MaxStartups 默認設置是 10:30:100,意思是從第10個連接開始以30%的概率(遞增)拒絕新連接,直到連接數達到100為止。

解決方法:

  • 修改/etc/ssh/sshd_config中的MaxStartups,將其改為MaxStartups 1000:30:1200;修改/etc/ssh/sshd_config中的MaxSessions,將其修改為1000
  • 重啟SSH服務/etc/init.d/ssh restart

另外,系統的默認連接時間120秒,如果遠程終端連接數過多,則會出現超時連接,解決辦法如下:

  • 修改/etc/ssh/sshd_config中LoginGraceTime 120,將其改為LoginGraceTime 0,其中0表示不限制連接時間。
  • 重啟SSH服務/etc/init.d/ssh restart


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM