当前位置: 首页 > news >正文

建设网站前市场分析网站开发视频代码

建设网站前市场分析,网站开发视频代码,百度网站查反链,新能源汽车十大名牌tomcat两大组件#xff1a;连接器Connector#xff0c;容器Container tomcat线程池 Tomcat线程池扩展了ThreadPoolExecutor#xff0c;行为稍有不同 重写了ThreadPoolExecutor的execute方法 如果总线程数达到maximumPoolSize#xff0c;不会立刻抛RejectedExecutionExcept…tomcat两大组件连接器Connector容器Container tomcat线程池 Tomcat线程池扩展了ThreadPoolExecutor行为稍有不同 重写了ThreadPoolExecutor的execute方法 如果总线程数达到maximumPoolSize不会立刻抛RejectedExecutionException异常 而是再次尝试将任务放入队列如果还失败才抛出RejectedExecutionException异常 tomcat线程池相关的配置 Connector配置对应server.xml中的Connector标签 acceptor线程数量(建立socket连接,这个线程很多时候在阻塞状态,没有新的连接就会等待,所以1个线程足够了)-acceptorThreadCount(default 1) poller线程数量(采用了多路复用的思想,1个线程就能监测多个channel的读写事件)-pollerThreadCount(default 1) Executor线程池中的核心线程数-minSpareThreads(default 10) Executor线程池中的最大线程数-maxThreads(default 200) Executor名称(引用Executor标签)-会覆盖掉minSpareThreads和maxThreads的值Executor线程配置对应server.xml中的Executor标签 线程优先级 - threadPriority(default 5) 是否守护线程 - daemon(default true) 核心线程数 - minSpareThreads(default 25) 最大线程数 - maxThreads(default 200) 非核心线程空闲生存时间 - maxIdleTime(default 60000)1分钟 队列长度 - maxQueueSize(default Integer.MAX_VALUE) 核心线程是否在服务器启动时启动 - prestartminSpareThreads(default false)核心类 org.apache.catalina.startup.Catalina#createStartDigester方法解析server.xml标签 Executor标签默认使用的这个StandardThreadExecutor启动核心方法startInternalexecute 但是SpringBoot中好像没用这个StandardThreadExecutor tomcat中有一个同名的ThreadPoolExecutor继承了JDK的ThreadPoolExecutor // TaskQueue是Tomcat中的任务队列 // org.apache.tomcat.util.threads.TaskQueue.java // public class TaskQueue extends LinkedBlockingQueueRunnable// 线程池中的线程数 核心线程数时,会直接创建新线程执行该任务 // calling this method when 线程池中的线程数 核心线程数 // TaskQueue重写了offer方法 public boolean offer(Runnable o) {if (this.parent null) {return super.offer(o);// 线程池中的线程数 最大线程数} else if (this.parent.getPoolSize() this.parent.getMaximumPoolSize()) {return super.offer(o);// 线程池中的线程数 队列里的任务和已经在执行但是还没执行完的任务} else if (this.parent.getSubmittedCount() this.parent.getPoolSize()) {return super.offer(o);} else {// 线程池中的线程数 最大线程数(此时会返回false,导致execute方法中调用addWorker方法创建一个线程)return this.parent.getPoolSize() this.parent.getMaximumPoolSize() ? false : super.offer(o);} }SpringBoot启动时Tomcat启动的过程从Spring的run方法开始一些关键节点 TomcatWebServer.class:185 WebServerStartStopLifecycle.class:22 DefaultLifecycleProcessor.class:123 DefaultLifecycleProcessor.class:294 DefaultLifecycleProcessor.class:100 DefaultLifecycleProcessor.class:74 AbstractApplicationContext.class:527 AbstractApplicationContext.class:296 TomcatWebServer.class:167 TomcatWebServer.class:166 TomcatWebServer.class:83 TomcatWebServer.class:75 TomcatWebServer.class:60 TomcatServletWebServerFactory.class:409 TomcatServletWebServerFactory.class:145 TomcatServletWebServerFactory.class:127 ServletWebServerApplicationContext.class:102 ServletWebServerApplicationContext.class:81 AbstractApplicationContext.class:293 AbstractApplicationContext.class:279 SpringApplication.class:493 SpringApplication.class:268 SpringApplication.class:171 WeiXinApplication.java:13tomcat的线程池机制 Tomcat线程池原理 Executor官方配置文档 tomcat-超详细的启动流程 SpringBoot启动流程之tomcat启动流程 SpringBoot中Tomcat是如何启动的
http://www.hkea.cn/news/14371543/

相关文章:

  • 广州pc网站建设空调维修网站模板
  • 企业网站关站济南建站价格
  • 怎么做正规网站wordpress 媒体库 插件
  • 做视频网站把视频放在哪里找包装东莞网站建设0769
  • 杭州网站建设招聘网网站制作用的软件有哪些
  • 仿网站重庆网站建设公司招聘
  • 网站建设引言wordpress 搭建
  • 网站开发提案庆阳东道设计
  • 广州网站建设维护网站管理员怎么做联系方式
  • 广州网站建设推广专家团队阿里云可以做网站
  • 泉州网站建设qzdzi公司网站上荣誉墙怎么做
  • 网站搭建前景温州手机网站推广
  • 有哪些网站可以做店面设计软件网站主编 做啥
  • 做网站需要的资料东莞人才市场档案管理电话
  • 中英文企业网站模板自我介绍网页设计模板
  • php自己做网站百度排名查询
  • 北京电商网站开发多少钱网站建设亿玛酷专注
  • 电脑如何做网站公司网站建设需要要求什么软件
  • 网站建设答辩问题四平市住房和城乡建设部网站
  • 江苏中小企业网站建设什么网站可以做兼职设计
  • 张家口北京网站建设wordpress资讯类主题
  • 大理公司网站建设哪些网站做的最好
  • 网站建设罗贤伟如何制作自己的网站?
  • 网站安全建设必要性ps设计网站首页效果图
  • 微信网站建设哪家好做黑网站赚钱
  • 汕头免费建站wordpress的功能
  • 怎么自己做网站凑钱网站301重定向怎么做
  • 做的新网站能用多久国外的旅游网站做的如何
  • 企业网站制作 深圳wordpress如何安装主题
  • 谷歌seo是啥seo搜索排名优化是什么意思