May 26, evening, I talk about the new features deployed online after two days, the interface service can not respond to error characteristics:
1. Log information:
EXEC-147] Com.xpx.middle.web.VproductSearchController-òì³£ðåºjava.io.ioexception:broken pipeòì³£¶ñõ»£º Org.apache.catalina.connector.OutputBuffer.realWriteBytes (outputbuffer.java:393) Org.apache.tomcat.util.buf.ByteChunk.flushBuffer (bytechunk.java:426) Org.apache.catalina.connector.OutputBuffer.doFlush (outputbuffer.java:342) Org.apache.catalina.connector.OutputBuffer.flush (outputbuffer.java:317) Org.apache.catalina.connector.CoyoteOutputStream.flush (coyoteoutputstream.java:110) Com.fasterxml.jackson.core.json.UTF8JsonGenerator.flush (utf8jsongenerator.java:1020)
There are no other business error messages.
2. New requests are not fully responsive.
Solution:
1. View CPU memory, the number of TCP connections are not many, MySQL SQL is also normal.
2. See Jstack-l PID also has no very special information.
Finally, the interface prints the node log, calculates several key steps of execution, time consuming, and finds clues.
Summary: Here to say that the interface timeout will cause the entire service is not available, do a good job of interface-dependent services error handling is critical:
FailFast: Quick Find errors
Failover: Failed to switch.
Finally: Change the service read timeout to allow service providers to optimize