¿Qué hace Tomcat durante el inicio?
Antes de aprender el proceso de inicio de Tomcat, es mejor verificar en línea cuáles son las interfaces de nivel superior de Tomcat, es decir, la arquitectura de diseño de Tomcat, de lo contrario, se confundirá al depurar el código y. no podrás ver nada.
Navegando por Internet sabemos que las principales interfaces de Tomcat son:
-Servidor, Servicio, Contenedor, Conector, Ciclo de vida, Ejecutor, Motor
, Host, Contexto, Wrapper, Valor y la relación entre ellos.
Otros:
Reino, MBean, etc.
Después de explorar inmediatamente estas interfaces de nivel superior y las relaciones entre ellas, dibujamos el siguiente diagrama de clases:
public?static?void?main(String args[]) {
02.
03. if(daemon ==?null) {
04.
05.daemon =?new ?Bootstrap ();
06.
07.try {
08.
09.// Inicializa el proceso del demonio. en realidad inicializa el cargador de clases
10.?
11.daemon.init();
12.?
13 .} ?catch?(T arrojable) {
14.
15.t.printStackTrace();
16.?
17 .return;
18.
19.}
20.?
21.}
22 .
23.
24.
25.try{
26.
27. = ?" inicio";
28.
29.if(args.length gt;?0) {
30.
31.comando = args[args.length -?1];
32.
33.}
34.
35.
36.
37. if(command.equals("startd")) {
38.
39. args[args.length -?1] = ?" inicio";
40.
41.daemon.load(args);
42 .?
43.daemon.start();
44.?
45.} else if(command.equals("stopd")) { p>
46.
47.args[args.length -?1] = ?" detener";
48.
49 .daemon .stop();
50.?
51.} else if(command.equals("inicio")) {
52.
53.daemon.setAwait(true);
54.?
55.// Carga archivos de configuración relacionados e inicializa varias instancias principales de interfaz de nivel superior
56.?
57.daemon.load(args);
58.?
59.// Comienzan esos seres vivos La cima instancia de nivel del ciclo y escucha las solicitudes de los usuarios
60.?
61.daemon.start();
62.?
63.} else if(command.equals("stop")) {
64.?
65.daemon.stopServer(args);
66.?
67.} ¿más?
69.log.warn("B
ootstrap: comando \"?"? comando ?" \" no existe.");
70.?
71.}
72.?
73.}?catch?(T arrojable) {
74.
75.t.printStackTrace();
76. .?
77.}
78.
79.
80.
81.}
A partir de este método, el proceso de inicio de Tomcat se puede simplificar en tres pasos:
1) Inicializar el proceso del demonio, que en realidad es la inicialización del cargador de clases
2) Cargue archivos de configuración relevantes e inicialice varias instancias de interfaz principales de nivel superior. En resumen, inicialice el servidor.
3) Inicie esas instancias de nivel superior con ciclos de vida y escuche las solicitudes de los usuarios. En otras palabras, inicie el servidor
.