java_web之tomcat

1.在cmd命令行运行 startup.bat时,tomcat console出现乱码

 解决方法:tomcat配置文件logging.properties

修改如下:

 

 #java.util.logging.ConsoleHandler.encoding = UTF-8

java.util.logging.ConsoleHandler.encoding = GBK

再次启动:

 

2.修改tomcat的默认端口

默认:

 

修改为8081:

 

3.tomcat 架构

 4.tomcat启动流程图

 

流程总结:调用bootstrap的main()方法启动,调用bootstrap的init()方法初始化,其中利用反射创建了Catalina对象,然后调用bootstrap的load(args)方法,其中反射设置方法名:String methodName = "load";利用反射调用了Catalina的load方法,在该方法中,执行getServer().init();创建server调用server的init方法,其中利用initInternal(),执行StandardServer的initInternal()方法,其中执行如下代码:

for (Service service : services) {
service.init();
}
调用service的init()方法,同理其中利用initInternal(),执行StandardService的initInternal()方法,执行engine.init()方法,然后执行executor.init()方法。。。
调用mapperListener.init(),调用connector.init(),调用protocolHandler.init()执行AbstractProtocol的init()方法,执行endpoint.init()方法。。

 

 tomcat集群

 

posted @ 2022-03-02 19:52  Cactus丶  阅读(22)  评论(0编辑  收藏  举报