有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java端口转发性能

Init 我已经实现了一个非常基本的端口转发应用程序,它从客户端获取输入并将其发送到远程sftp服务器

插座:

socket sock = server_sock.accept()
Socket client_sock = new Socket("remote sfpt server host",port);
client_sock.connect();

然后使用以下逻辑复制每个socket的输入/输出流

副本:

byte b[] = new byte[65535];
int bytesRead = 0;
while ((bytesRead =in.read(b)) >= 0){
    out.write(b, 0, bytesRead);
    out.flush();
}

问题

  1. sftp服务器和基本端口转发服务器都托管在 同样的机器

  2. 直接连接到sftp服务器,我可以以大约30MB/s的速度传输文件,而

  3. 通过端口转发服务器传输文件的速度始终为~3MB/s-4MB/s。

  4. 我也尝试过ServerSocketChannel,但性能不佳 一样

问题是如何在每台sftp服务器上提高此基本端口转发服务器的性能


共 (0) 个答案