- 浏览: 9609 次
- 性别:
- 来自: 杭州
最新评论
文章列表
Tomcat处理一个Request的大致流程
图:Tomcat处理request的轨迹图
请求处理的时序图:
一、Tomcat的启动流程与架构
Tomcat启动的时候的debug的运行轨迹图,框出来的代表主要容器的执行方法。
Tomcat执行大致的流程图
整体上看一看Tomcat的概览图
顶层元素:Server,Service连接器元素:Connector(HTTP,AJP等)容器元素:Engine(跟Connector结合,处理http请求),Host(对应于多个主机 i.e. mail.test.com,www.test.com,www.test2.com),Context(对应于一个个webapp应用),W ...
指令重排序
指令重排序的原因:对主存的一次访问一般花费硬件的数百次时钟周期。处理器通过缓存(寄存器、cpu缓存等)能够从数量级上降低内存延迟的成本这些缓存为了性能重新排列待定内存操作的顺序。也就是说,程序的读写操作不一定会按照它要求处理器的顺序执行。
一、编译期重排序
编译期重排序的典型就是通过调整指令顺序,在不改变程序语义的前提下,尽可能减少寄存器的读取、存储次数,充分复用寄存器的存储值。
假设第一条指令计算一个值赋给变量A并存放在寄存器中,第二条指令与A无关但需要占用寄存器(假设它将占用A所在的那个寄存器),第三条指令使用A的值且与第二条指令无关。那 ...
一般使用cglib最多的是Enhance类。
1Enhance运用的一个例子
Enhance生成动态子类以支持AOP。
public class MyTestEnhancer extends TestCase {
private static final MethodInterceptor TEST_INTERCEPTOR = new TestInterceptor();
@Override
protected void setUp() throws Exception {
System.setProperty( ...