java - 如何配置 tomcat 来处理错误的 HTTP 客户端?

标签 java tomcat jakarta-ee jboss java-ee-5

我们正在运行 jBoss 5.1,后者又使用 Tomcat servlet 容器。

我们已经看到一些错误的 HTTP 客户端会打开套接字、发出 HTTP 请求、无法读取所有数据并无法关闭连接的情况。

结果是 tomcat 线程无限期地阻止尝试写入输出流:

SocketOutputStream.socketWrite0(FileDescriptor, byte[], int, int) 
SocketOutputStream.socketWrite(byte[], int, int) 
SocketOutputStream.write(byte[], int, int)  
InternalOutputBuffer.realWriteBytes(byte[], int, int) 
ByteChunk.flushBuffer()
ByteChunk.append(byte[], int, int)
InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(ByteChunk, Response)
IdentityOutputFilter.doWrite(ByteChunk, Response)
InternalOutputBuffer.doWrite(ByteChunk, Response) 
Response.doWrite(ByteChunk)
OutputBuffer.realWriteBytes(byte[], int, int) 
ByteChunk.append(byte[], int, int) 
OutputBuffer.writeBytes(byte[], int, int) 
OutputBuffer.write(byte[], int, int)    
CoyoteOutputStream.write(byte[], int, int)

如何将这些连接配置为超时?

最佳答案

你可以把Apache在它的前面。说真的。

关于java - 如何配置 tomcat 来处理错误的 HTTP 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1278709/

相关文章:

java - 自定义 Java 序列化

java - Faces Servlet 的 doGet 方法

javascript - 如何访问存储为数组的 session 名称?

java - Spark 2.0 中的字符串、数据集对

java - 如何从 java 代码获取 Maven 项目 BaseDir()

java - Spring @Scheduled 注解方法在给定时间内运行多次

apache - 如何在Tomcat和Apache服务器中组织文件?

hibernate - 在 tomcat 中创建名称为 'dataSource' 的 bean 时出错

java - 确定哪些测试用例覆盖了一个方法

java - 是否可以使用 ANT 构建文件访问/添加远程位置 jar 到项目中?