博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tomcat读码记录 - 调试断点
阅读量:5756 次
发布时间:2019-06-18

本文共 820 字,大约阅读时间需要 2 分钟。

  hot3.png

socket创建位置: 

org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run()

处理socket线程的线程池为:

org.apache.tomcat.util.threads.ThreadPoolExecutor

socket处理线程:

org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run()

socket处理方法:

org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler(AbstractProtocol$AbstractConnectionHandler<S,P>).process(SocketWrapper<S>, SocketStatus)

Protocol process使用Processer:

org.apache.coyote.http11.Http11Processor.process(socket)

Parse Request line:
org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(boolean)

Parse Headers:

org.apache.coyote.http11.InternalInputBuffer.parseHeaders()

Prepare request

service request:
org.apache.catalina.connector.CoyoteAdapter.service(Request, Response)

当第一次调用request.getParameters()的时候,才分析message body.

转载于:https://my.oschina.net/xpbug/blog/91418

你可能感兴趣的文章
使用 SharpSvn 执行 svn 操作的Demo
查看>>
js函数大全
查看>>
iOS app exception的解决方案
查看>>
Mongodb启动命令mongod参数说明
查看>>
TCP&UDP压力测试工具
查看>>
oracle 导入数据
查看>>
Android 最简单的自定义Dialog之一
查看>>
磨刀不误砍柴 - 配置适合工作学习的桌面环境
查看>>
Java笔记-反射机制(一)
查看>>
redux v3.7.2源码解读与学习之 applyMiddleware
查看>>
【React】为什么我不再使用setState?
查看>>
Git原理与高级使用(3)
查看>>
从JDK源码看Writer
查看>>
Express 结合 Webpack 实现HMRwi
查看>>
基于protobuf的RPC实现
查看>>
坚信每个人都能成为品牌
查看>>
JAVA的对象复制
查看>>
打开Office报错
查看>>
我的友情链接
查看>>
AsyncTask简易使用
查看>>