zoukankan      html  css  js  c++  java
  • Tomcat线程池

    简述

      tomcat分为两部分,connector和container。connector部分组成如下:

      LimitLatch 用来限流,可以控制最大连接个数

      Acceptor 只负责【接收新的 socket 连接】 

      Poller 只负责监听 socket channel 是否有【可读的 I/O 事件】

      一旦可读,封装一个任务对象(socketProcessor),提交给 Executor 线程池处理 

      Executor 线程池中的工作线程最终负责【处理请求】 

    tomcat的线程池

      Tomcat 线程池扩展了 ThreadPoolExecutor,行为稍有不同

      如果总线程数达到 maximumPoolSize这时不会立刻抛 RejectedExecutionException 异常而是再次尝试将任务放入队列,如果还失败,才抛出 RejectedExecutionException 异常 

    tomcat配置

      在tomcat的server.xml文件我们可以配置相关参数

      关键的是配置Executor线程池

      maxQueueSize可以设置为无界队列,如果是无界队列,那是不是就没有救急线程了呢

      tomcat的做法是这样的

    一点一点积累,一点一点蜕变!
  • 相关阅读:
    TypesScript+Webpack
    TypeScript 类型
    git操作
    kafka
    java: cannot find symbol symbol: variable log
    Angular结构型指令,模块和样式
    Angular 自定义拖拽指令
    Angular changeDetction
    Angular 依赖注入
    RXJS Observable的冷,热和Subject
  • 原文地址:https://www.cnblogs.com/qq2210446939/p/15165101.html
Copyright © 2011-2022 走看看