Spring 当发送了将近5MB的重json时,它会给我java.net.SocketException:connectionresetbypeer:socketwrite错误

Spring 当发送了将近5MB的重json时,它会给我java.net.SocketException:connectionresetbypeer:socketwrite错误,spring,api,spring-boot,java,Spring,Api,Spring Boot,Java,想要发布一个巨大的JSON对象,但是当我尝试时,我得到了一个错误: 套接字异常 当我通过HttpClient Post请求发送一个大而重的json时,它会给我一个下面的错误 所以,如何解决下面的错误我研究了所有张贴的问题。但并没有得到一个正确的解决我的错误 仅供参考:基本上,我们在服务器端使用spring引导api。我们从java中的应用程序调用该api 你能请任何人帮我解决下面的错误吗 1) 如何在java中从客户端发送 2) 如何在java中获取服务器端的json?您应该通过键入socket

想要发布一个巨大的JSON对象,但是当我尝试时,我得到了一个错误:

套接字异常

当我通过HttpClient Post请求发送一个大而重的json时,它会给我一个下面的错误

所以,如何解决下面的错误我研究了所有张贴的问题。但并没有得到一个正确的解决我的错误

仅供参考:基本上,我们在服务器端使用spring引导api。我们从java中的应用程序调用该api

你能请任何人帮我解决下面的错误吗

1) 如何在java中从客户端发送


2) 如何在java中获取服务器端的json?

您应该通过键入
socket.setSortimeout(number)

文件:

发布大量文本这不是个好主意。您应该对此应用一些分页并拆分,例如每200kb一次


对于大型json文件,我建议使用BSON

您应该通过键入
socket.setSoTimeout(number)

文件:

发布大量文本这不是个好主意。您应该对此应用一些分页并拆分,例如每200kb一次


对于大型json文件,我建议使用BSON,原因之一是tomcat服务器上的请求大小限制。在这种情况下,您将需要增加该值,如

所述,发生这种情况的原因之一是tomcat服务器上的请求大小限制。在这种情况下,你将需要增加,如

上所述,我认为发布大量文本不是一个好主意。我建议您应该拆分此json并为此应用一些分页。您是否尝试增加超时?@lukassz您有没有其他方法不拆分json,因为我们已经将该json拆分为小json,实际上原始json大小几乎为50 MB。@pvpkiran我们从不使用超时。如何使用超时。它是如何工作的?正如@lukassz所说,发送大文件不是一个好主意。但是你仍然可以检查这个来增加超时时间。你可以设置不同类型的超时。我认为发布大量文本不是个好主意。我建议您应该拆分此json并为此应用一些分页。您是否尝试增加超时?@lukassz您有没有其他方法不拆分json,因为我们已经将该json拆分为小json,实际上原始json大小几乎为50 MB。@pvpkiran我们从不使用超时。如何使用超时。它是如何工作的?正如@lukassz所说,发送大文件不是一个好主意。但是你仍然可以检查这个来增加超时时间。您可以设置不同类型的超时
java.net.SocketException: Connection reset by peer: socket write error
 at java.net.SocketOutputStream.socketWrite0(Native Method)
 at java.net.SocketOutputStream.socketWrite(Unknown Source)
 at java.net.SocketOutputStream.write(Unknown Source)
 at org.apache.http.impl.io.SessionOutputBufferImpl.streamWrite(SessionOutputBufferImpl.java:126)
 at org.apache.http.impl.io.SessionOutputBufferImpl.write(SessionOutputBufferImpl.java:162)
 at org.apache.http.impl.io.ContentLengthOutputStream.write(ContentLengthOutputStream.java:115)
 at org.apache.http.impl.io.ContentLengthOutputStream.write(ContentLengthOutputStream.java:122)
 at org.apache.http.entity.StringEntity.writeTo(StringEntity.java:169)
 at org.apache.http.impl.DefaultBHttpClientConnection.sendRequestEntity(DefaultBHttpClientConnection.java:158)
 at org.apache.http.impl.conn.CPoolProxy.sendRequestEntity(CPoolProxy.java:162)
 at org.apache.http.protocol.HttpRequestExecutor.doSendRequest(HttpRequestExecutor.java:237)
 at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:122)
 at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:271)
 at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
 at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
 at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
 at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
 at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
 at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
 at com.os.util.helper.microServiceHelper.AbstractMicroServiceHelper.getResultFromMicroServices(AbstractMicroServiceHelper.java:196)
 at com.os.util.helper.microServiceHelper.IsheetVersionMicroserviceImpl.bulkInsertUpdateIsheetVersion(IsheetVersionMicroserviceImpl.java:75)
 at com.os.gfnactions.isheet.IsheetVersionPutInMicroserviceThread.run(IsheetVersionPutInMicroserviceThread.java:36)
 at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
 at java.util.concurrent.FutureTask.run(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)