为质量而战!为胜利而战!

发布新日志

  • Servlet的原理和生命周期

    2009-04-04 22:54:10

    先来看一下CGI和Servlet的比较:

         
    CGI采用多进程 每个进程独立占用资源 每产生一个进程都要向系统申请资源,启动速度比较慢,运行过程比较快
    Servlet采用多线程 共享同一个进程资源 每产生一个线程的速度是很快的

        并发量大时,多进程方式会占用大量系统资源,多线程方式也会出现抢占资源的现象,但多线程方式还是比较优的,另外,实例变量会产生共享冲突,所以尽量采用本地变量

    Servlet的生命周期:

    (1)Web客户请求Servlet服务,容器加载一个Java Servlet类

    (2)创建一个或多个实例

    (3)HttpServlet.init()进行初始化,传入一个ServletConfig对象

    (4)容器把HttpServletRequest和HttpServletResponse对象传递给HttpServlet.service()方法,service()被多次调用,各运行在不同的线程

     

Open Toolbar