教育房产时事环球科技商业
投稿投诉
商业财经
热点动态
科技数码
软件应用
国际环球
晨报科学
新闻时事
信息智能
汽车房产
办公手机
教育体育
生活生物

tomcat虚拟主机(tomcat虚拟主机有什么用)

  tomcat虚拟主机(tomcat虚拟主机有什么用)
  Tomcat组件Server和Service
  Tomcat中Server是最顶级的组件,它代表Tomcat的运行实例,一个JVM中只会包含一个Server。为了方便扩展,Server中引入了监听器Listener组件;为了方便集成JNDI,引入了GlobalNamingResources组件。Server中最重要的组件还是Service。
  一个Server包括多个Service
  在Tomcat中,Service组件是服务的抽象,一个Server中可以包含多个Service。Service组件负责从接收客户端请求到处理请求的整个过程,内部包含了若干接收客户端消息的 Connector 组件和一个处理请求的 Engine 组件。
  此外,Service组件还包含了Executor组件,每一个Executor都是一个线程池,它可以为Service内其他组件提供执行任务的线程资源。Connector
  Tomcat的核心可以认为主要由连接器(Connector)组件和容器(Container)组件组成,其中Connector负责处理客户端连接,而Container则负责对请求进行逻辑处理,并把结果返回给客户端。
  不同Connect对应不同的通信协议
  Connector主要的职责就是接收客户端连接并接收消息报文,消息报文经由它解析后送往容器中处理。因为Tomcat支持不同的通信协议,例如HTTP协议、AJP(Apache JServ Protocol)协议等,所以需要不同的Connector组件,每种协议对应一个Connector组件。
  另外不同类型的网络I/O,Connector组件的内部实现也不相同,可分为阻塞I/O和非阻塞I/O。以HTTP协议为例,看看阻塞I/O和非阻塞I/O的Connector内部实现有何不同。
  BIO Connector
  BIO Connector组件
  阻塞I/O的Connector主要由三个组件组成:
  Http11Protocol组件,是HTTP协议1.1版本的抽象,主要包含JIoEndpoint组件和Http11Processor组件。Tomcat启动时,JIoEndpoint内部的Acceptor开始监听某个端口,一个请求到来后将被扔进线程池Executor,由线程池进行任务处理。处理过程主要是通过Http11Processor组件对HTTP协议解析并传递到Engine容器。
  Mapper组件,负责对客户端请求进行路由,即通过请求地址找到对应的Servlet。
  CoyoteAdaptor组件,将Connector和Container适配起来的适配器。
  NIO Connector
  非阻塞I/O的Connector的结构类似BIO Connector,主要区别在于:
  Http11Protocol组件改成Http11NioProtocol组件;JIoEndpoint组件改成NioEndpoint;Http11Processor组件改成Http11NioProcessor组件,功能基本类似。
  增加了一个Poller组件,负责轮询多个客户端连接,不断检测各个连接是否有可读数据,如果有客户端可读,则尝试进行读取并解析消息报文。Container
  Tomcat内部有4个级别的容器,分别是Engine、Host、Context和Wrapper。Engine代表全局Servlet引擎,每个Service组件只能包含一个Engine容器组件,但Engine组件可以包含若干Host 容器组件。
  Tomcat容器
  Engine
  除了Host以外,Engine容器还包括了Engine容器级别的Listener组件(监听器)、AccessLog组件(日志)、Cluster组件(集群功能)、Pipeline组件(请求处理管道)、Realm组件(用户权限)。
  Host
  Host组件代表虚拟主机的抽象,一个虚拟主机中可以存放若干Web应用的抽象,即一个Host可以包含多个Context容器。
  和Engine类似,Host容器中也包含了Listener、AccessLog、Cluster、Pipeline、Realm这些组件,不过这些组件都是Host容器级别的。
  Context
  Context组件是Web应用的抽象,我们开发的Web应用部署到Tomcat后运行时就会生成一个Context对象。
  Context包含了应用级别的Listener、AccessLog、Pipeline、Realm组件,还包括了Loader组件(加载web应用资源)、Manager组件(会话管理)、NamingResource住院(命名资源)、Mapper组件(Servlet映射器)和Wrapper容器。
  Wrapper
  Wrapper容器是Tomcat中4个级别的容器中最小的,与之相对应的是Servlet,一个Wrapper对应一个Servlet。
  Wrapper中包含的组件有Servlet、ServletPool(Servlet对象池)和Pipeline组件(处理管道)。Tomcat的请求处理过程
  一个客户端请求到达Tomcat之后的处理流程如上图所示:
  当Tomcat启动后,Connector的接收器Acceptor会监听是否有客户端连接。
  一旦监听到客户端连接,则将连接交给线程池Executor,开始执行请求响应任务。
  Http11Processor负责从客户端连接中读取Http报文并进行解析,解析后的报文封装成Request对象。
  Maper根据Http协议请求的URL值和Host属性匹配由哪个Host、哪个Context和哪个Wrapper容器来处理请求。
  CoyoteAdaptor负责将Connector组件和Engine容器连接起来,将Request对象和Response对象传递到Engine容器中。
  Engine容器的请求处理管道开始工作,管道里包括若干Valve,每个Valve都负责一些处理逻辑。
  Engine容器的请求处理管道工作完成后,再依次交给Host容器的处理管道、Context容器的处理管道和Wrapper容器的处理管道。最后将结果输出到客户端。
  参考资料:《Tomcat内核设计剖析》
  我会持续更新关于物联网、云原生、数字化技术方面的文章,用简单的语言描述复杂的技术,也会偶尔发表一下对IT产业的看法,请大家多多关注,欢迎留言和转发,希望与大家互动交流,谢谢。

陕西中考总分多少(渭南2021中考满分800分)2021年陕西省初中学业水平考试(以下简称中考)将于6月19日至21日进行,全县共设迤山中学富平中学实验中学3个考点。为确保中考工作安全有序顺利进行,特向广大人民群众公告如下一县城安徽中考总分多少(安徽中考750分怎么分配)城市科目语文数学外语道德与法治历史物理化学体育与健康实验操作生物地理信息技术国学经典总分合肥150hr150hr120hr80hr70hr70hr40hr60hr10hr750hr江西中考总分多少(江西初一各科满分是多少)很多家长咨询,南昌市2021年中考实施方案何时公布?据南南了解,教育主管部门正在加紧制定中。近日,吉安市教体局印发关于进一步推进我市初中学业水平考试和学生综合素质评价改革的通知,明中考满分是多少(2021四川中考总分是多少)为让招生政策权威声音更好地走进千家万户,成都市教育局充分考虑到家长朋友们的需求,相比起往年,今年的招生入学政策发布时间更早了,留给家长朋友们消化的时间也更多了。今日,随着2021年中考满分多少分(2022年中考已确定改革)随着中高考的改革,很多学生直呼压力大,中考虽然没有高考受度高,但很多家长已经意识到好的高中对于高考的意义。近几年,中考科目又加入了新的学科,首先是体育,而新增的这门科目,堪称是学生小学语文课程标准(小学语文学科课程标准及其解读)小学语文课程标准(小学语文学科课程标准及其解读)你知道小学语文课程的是什么样子的呢?会是简单的语言和文字教学吗?其实对于语文课程,我们国家有专门的出版书籍进行详细的介绍和讲解。那就传奇哪个游戏好玩(最好玩的游戏)英雄合击手游很受玩家喜爱,但英雄合击三个职业却很少,主要原因是在游戏端的操作上角色和英雄背包的装备很难完全替换和转移。今日为您介绍一款全新的英雄合击传奇手游,道士可召唤5只狗,法师幼儿园大班学期总结(2020年大班上学期总结)幼儿园大班学期总结(2020年大班上学期总结)2020年幼儿园大班班级工作总结时间过的好快,一晃又到了六月底,暑假也到了,小朋友可以放假了。现在回头看看,这几个月所经历的风风雨雨,幼儿园大班班级总结(幼儿园班况分析大班)幼儿园大班班级总结(幼儿园班况分析大班)幼儿园小中大班级五月份教师工作总结范文202105281418幼师教学资源库大班五月工作总结范文1五月,忙碌而又丰富多彩,我们师生共同演绎着幼儿园大班教育心得(幼儿园大班工作总结)幼儿园大班教育心得(幼儿园大班工作总结)幼教姐妹,你是不是在搜索大班工作总结,刘老师给你找好了,收藏吧!幼儿园大班班级工作总结本学期的工作又将告一段落,在展望新的一年的同时,回顾和大班幼儿年龄特点(大班幼儿年龄特点表现在哪些方面?)大班幼儿年龄特点(大班幼儿年龄特点表现在哪些方面?)大班幼儿年龄特点表现在哪些方面?大班幼儿一般在5岁,有的宝宝出生在9月以后的话,可能是6岁。这个时候的宝宝是非常有年龄特点的,完
打碟机多少钱(打碟机入门设备)近几天吴亦凡的freestyle火遍了朋友圈,也让说唱歌手有了更多,作为一个出身一般但有一颗音乐梦的rapper,我的内心当然是无比激动的,也让我对音乐这条路充满了期盼。在学校里,国产机哪个牌子好(影碟机哪个牌子好)人们在购买蓝光影碟机时都会优选知名品牌,蓝光影碟机有什么牌子?今日就由PChouse为你一一解答。1飞利浦飞利浦,1891年成立于荷兰,主要生产照明家庭电器医疗系统方面的产品。在全华为年薪多少(能进华为的人有多优秀)如今在进入社会工作之后,其实有很多年轻人都渴望自己能够在行业中获得非常好的发展,大家会非常羡慕那些华为员工的薪酬待遇,因为在年底能够获得丰厚的年终奖励,那么如果是普通的大学生或者是英亩等于多少亩(一英亩多大面积)作为世界最大的大豆生产国,在世界年总产量3。16亿吨的大豆中,美国占有1。07亿吨,超过世界总量13。不仅产量大,美国在大豆产业链每一环节都极具竞争优势,大豆在美国人手中甚至扮演战如何重置AirPods重置AirPods会将AirPods恢复为出厂默认设置此过程可能有助于解决AirPods的各种问题但是如果您计划将使用过的AirPods交给其他人或者甚至将AirPods同步并将其一对Powerbeats3发售时无需担心运动截至10月8日BeatsPowerbeats3无线耳机在亚马逊上的售价为169。98美元我们都知道AirPod的热潮不会很快结束但是如果您是健身迷那么它们可能不是您锻炼健身的最佳选为什么智能家庭体育馆可以留在这里混搭系列2025年的技术探索当今的挑战将如何在不久的将来显着改变安妮卡middot卡普尔(AnnikaKapur)以前每周去健身房五六天然后大流行呆在家里她开始使用TempoStu怎么调输入法(输入法从哪设置)使用Windows10,光靠点击鼠标远远不够,我们使用键盘的时间可能会更多,复杂程度也更深。就效率而言,键盘使用技能对输入的影响要比鼠标更大。为了提高输入效率,Windows10在cad怎么画(autocad怎么画图纸)有些CAD新手在刚开始学习绘制CAD施工图的时候,看到网络上这么多的CAD软件版本不知道该用哪个好,今天小编就来给大家推荐一下画CAD施工图用哪个版本的CAD软件比较好吧!CAD画cad怎么等分(autocad怎么等分)使用了定数等分后在对象上没有出现等分点应该怎么让等分点显示出来呢?操作工具操作系统Windows10CAD软件CAD梦想画图步骤1。首先画一条长度为80的直线段,如下图动画所示绘制b数是什么意思(心里没点b数啥意思)感谢你的阅读和支持,喜欢可以公众号三叔看世界,并推荐给身边的朋友哦约莫从我将近20年前开始上网起,有一个话题可谓经久不衰,参与讨论的网友络绎不绝,最早的那波人估计现在都快退休了。那