A good place to start would be the servlet spec. The section on the servlet life cycle is clear and well written. You can find a link to this document in my signature.
Anyway. The container calls the service method whenever a request comes in. Init and destry will most likely be called once. (containers are free to take servlets out of commission to save resources). Each time it is taken out of service, the destroy method is called. Each time it it put into service, the init method will be called. [ March 26, 2008: Message edited by: Ben Souther ]