Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java服务器通过TCP接收大数据的速度比预期慢_Java - Fatal编程技术网

Java服务器通过TCP接收大数据的速度比预期慢

Java服务器通过TCP接收大数据的速度比预期慢,java,Java,我正在用java编写一个简单的TCP服务器,从客户机接收图像数据,然后对其进行处理。客户端通过25Gbit网络连接到服务器,但数据传输速度限制在4.5Gbit/s左右 客户端(winserv 2016)正在以100fps(每帧8MB)的速度从sCMOS摄像机记录数据,然后将数据直接写入TCP套接字。然后服务器(Centos7)读取数据并将其写出。服务器逐映像读取数据。下游磁盘写入吞吐量不是问题,因为我尝试了不写入数据的方式,并且看到了相同的性能。在windows客户端和linux服务器之间使用i

我正在用java编写一个简单的TCP服务器,从客户机接收图像数据,然后对其进行处理。客户端通过25Gbit网络连接到服务器,但数据传输速度限制在4.5Gbit/s左右

客户端(winserv 2016)正在以100fps(每帧8MB)的速度从sCMOS摄像机记录数据,然后将数据直接写入TCP套接字。然后服务器(Centos7)读取数据并将其写出。服务器逐映像读取数据。下游磁盘写入吞吐量不是问题,因为我尝试了不写入数据的方式,并且看到了相同的性能。在windows客户端和linux服务器之间使用
iperf
,可以提供预期的带宽(20+Gbit/s)。在
iperf
和TCP流量之间存在这样的位网络速度差,这正常吗

private void writefile(int-zsize、int-ysize、int-xsize、字符串文件名、int-port)引发IOException{
InetAddress add=InetAddress.getByName(config.ipadd);
ServerSocket=新的ServerSocket(端口,10,添加);
插座客户端插座;
clientsocket=socket.accept();
FileOutputStream fos=新的FileOutputStream(文件名);
DataInputStream in=新的DataInputStream(新的BufferedInputStream(clientsocket.getInputStream());
int chunksize=2*xsize*ysize;
字节[]帧=新字节[chunksize];
长t0=System.currentTimeMillis();

对于(int i=0;i问题是什么?非常感谢!我在结尾处提出了一个问题。你的相机据说每秒产生800MB,约为6.5Gbit。如果它占用了你所有的频道,我会感到惊讶。这种传输速度似乎适合于压缩后的图像流。关于你的图像如何传输,也没有足够的信息红色