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

网站制作论文致谢坪山新区城市建设局网站

网站制作论文致谢,坪山新区城市建设局网站,wordpress 主题和插件下载,博客网站开发视频一、Tomcat的基本功能 1.1.Tomcat是什么#xff1f; Tomcat服务器是一个免费的开放源代码的Web应用服务器#xff0c;属于轻量级应用服务器#xff0c;在中小型系统和并发访问用户不是很多的场合下被普遍使用#xff0c;是开发和调试JSP程序的首选。一般来说#xff0c;T…一、Tomcat的基本功能 1.1.Tomcat是什么 Tomcat服务器是一个免费的开放源代码的Web应用服务器属于轻量级应用服务器在中小型系统和并发访问用户不是很多的场合下被普遍使用是开发和调试JSP程序的首选。一般来说Tomcat虽然和Apache或者Nginx这些Web服务器一样具有处理HTML页面的功能然而由于其处理静态HTML的能力远不及Apache或者Nginx所以Tomcat通常是作为 一个Servlet和JSP容器单独运行在后端。 官网地址Apache Tomcat® - Welcome!​​​​​ 1.2 Tomcat的构成组件 Tomcat 由一系列的组件构成其中核心的组件有三个Web 容器、 Servlet 容器、JSP 容器 Web 容器完成 Web 服务器的功能 Servlet 容器名字为 catalina用于处理 Servlet 代码 Servlet 是Java Servlet 的简称可以理解为是一个服务连接器是用 Java 编写的服务器端程序具有独立于平台和协议的特性 简单的理解servlet 就是一个中间件包含了接口和方法将客户端和数据库连接从而实现动态网页的创建。 JSP 容器用于将 JSP 动态网页翻译成 Servlet 代码 JSP 全称 Java Server Pages是一种动态网页开发技术。它使用 JSP 标签在HTML网页中插入 Java 代码。标签通常以 % 开头以 % 结束。         JSP 是一种 Java servlet主要用于实现 Java web 应用程序的用户界面部分。         JSP 通过网页表单获取用户输入数据、访问数据库及其他数据源然后动态地创建网页。         因此 Tomcat 是 Web 应用服务器也是一个 Servlet/JSP 容器。Tomcat 作为 Servlet 容器负责处理客户请求把请求传送给 Servlet并将 Servlet 的响应传送回给客户。 1.3 Tomcat的顶层架构 1、Tomcat中最顶层的容器是Server代表着整个服务器一个Server可以包含至少一个Service用于具体提供服务。         2、Service主要包含两个部分:Connector和Container。Tomcat的心脏就是这两个组件这两个组件的作用:Connector用于处理连接相关的事情并提供Socket与Request和Response相关的转化; Conta iner用于封装和管理Servlet以及具体处理Request请求。         3、一个Tomcat中只有一个Server一个Server可以包含多个Service一个Service只有一个Container,但是可以有多个Connectors因为一个服务可以有多个连接如同时提供Http和Https链接也可以提供向相同协议不同端口的连接。         4、多个Connector和一个Container就形成了一个Service有了Service就可以对外提供服务了但是Service还要一个生存的环境必须要有人能够给它生命、掌握其生死大权那就非Server莫属了!所以整个Tomcat的生命周期由Server控制。另外上述的包含关系或者说是父子关系都可以在tomcat的conf目录下的server .xml配置文件中看出。         5、server.xm1中定义Server port8005 shutdownSHUTDOWN这会让Tomcat6启动一个server实例(即一个JVM)它监听在8005端口以接收“SHUTDOWN”命令如果接收到了就会关闭Tomcat。各Server的定义不能使用同一个端口这意味着如果在同一个物理机上启动了多个Server实例必须配置它们使用不同的端口。 1.4 Tomcat的核心功能 Tomcat 的核心功能有两个分别是负责接收和反馈外部请求的连接器 Connector和负责处理请求的容器 Container。 其中连接器和容器相辅相成一起构成了基本的 web 服务 Service。每个 Tomcat 服务器可以管理多个 Service。 Connector负责对外接收和响应请求。它是Tomcat与外界的交通枢纽监听端口接收外界请求并将请求处理后传递给容器做业务处理最后将容器处理后的结果响应给外界。         Container负责对内处理业务逻辑。其内部由 Engine、Host、Context和Wrapper 四个容器组成用于管理和调用 Servlet 相关逻辑。         Service对外提供的 Web 服务 Container 结构分析 每个 Service 会包含一个 Container 容器。在 Container 内部包含了 4 个子容器 4个子容器的作用分别是 Engine引擎用来管理多个虚拟主机一个 Service 最多只能有一个 Engine         Host代表一个虚拟主机也可以叫站点通过配置 Host 就可以添加站点         Context代表一个 Web 应用包含多个 Servlet 封装器         Wrapper封装器容器的最底层。每一 Wrapper 封装着一个 Servlet负责对象实例的创建、执行和销毁功能。         Engine、Host、Context 和 Wrapper这四个容器之间属于父子关系。 容器 由一个引擎可以管理多个虚拟主机。每个虚拟主机可以管理多个 Web 应用。每个 Web 应用会有多个 Servlet 封装器。 1.5 Tomcat的请求过程 1.用户在浏览器中输入该网址请求被发送到本机端口8080被在那里监听的Coyote HTTP/1.1 Connector获得;         2.Connector把该请求交给它所在的Service的Engine (Container) 来处理并等待Engine的回应;         3.Engine获得请求localhost/test/index.jsp匹配所有的虚拟主机Host;         4.Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理因为该Host被定义为该Engine的默认主机)名为localhostHost获得请求/test/index.jsp匹配它所拥有的所有Context。Host匹配到路径为/test的Context(如果匹配不到就把该请求交给路径名为“”的Context去处理);         5.path/test的Context获得请求/ index. jsp在它的mapping table中寻找出对应的Servlet。Context 匹配到URLPattern为* .jsp的Servlet对应于JspServlet类;         6.构造HttpServletRequest对象和HttpServletResponse对象作为参数调用JspServlet的doGet()或doPost(),执行业务逻辑、数据存储等         7.Context把执行完之后的HttpServletResponse对象返回给Host; .         8.Host把HttpServletResponse对象返回给Engine;         9.Engine把HttpServletResponse对象返回Connector;         10.Connector把HttpServletResponse对象返回给客户Browser 1.6 Tomcat的配置文件 安装目录下 文件介绍 ls /usr/local/tomcat/ bin           conf             lib      logs    README.md      RUNNING.txt  webapps BUILDING.txt  CONTRIBUTING.md  LICENSE  NOTICE  RELEASE-NOTES  temp         work 目录名字功能bin存放启动和关闭 Tomcat 的脚本文件比较常用的是 catalina.sh、startup.sh、shutdown.sh 三个文件conf存放 Tomcat 服务器的各种配置文件比较常用的是 server.xml、context.xml、tomcat-users.xml、web.xml 四个文件。lib存放 Tomcat 服务器的 jar 包一般不作任何改动除非连接第三方服务比如 redis那就需要添加相对应的 jar 包logs存放 Tomcat 日志 catalina.outtemp存放 Tomcat 运行时产生的文件webapps存放项目资源的目录workTomcat 工作目录一般清除 Tomcat 缓存的时候会使用到升级版本时注意要删除里面的缓存 conf子目录 文件名说明server.xml主配置文件 全局生效web.xml每个webapp只有“部署后才能被访问,它的部署方式通常由web.xml进行定义,其存放位置为WEB-INF/目录中;此文件为所有的webapps提供默认部署相关的配置,每个web应用也可以使用专用配置文件,来覆盖全局文件context.xml用于定义所有web应用均需加载的Context配置,此文件为所有的webapps提供默认配置,每个web应用也可以使用自已专用的配置,它通常由专用的配置文件context.xml来定义,其存放位置为WEB-INF/目录中,覆盖全局的文件tomcat-users.xml用户认证的账号和密码文件catalina.policy当使用security选项启动omcat时,用于为tomcat设置安全策略catalina.propertiesTomcat环境变量的配置,用于设定类加载器路径以及一些与JVM调优相关参数logging.propertiesTomcat日志系统相关的配置可以修改日志级别和日志路径等注意配置文件对于大小写敏感 二、Tomcat服务安装 2.1 .安装jdk、设置环境变量并测试 第一步安装jdk 在部署 Tomcat 之前必须安装好 jdk因为 jdk 是 Tomcat 运行的必要环境。 1. #关闭防火墙 systemctl stop firewalld systemctl disable firewalld setenforce 0   2. #将安装 Tomcat 所需软件包传到/opt目录下 apache-tomcat-9.0.16.tar.gz  jdk-8u291-linux-x64.rpm   3. #切换至/opt下安装JDK cd /opt yum install jdk-8u291-linux-x64.rpm    -y rpm q jbk1.8.x86_64 rpm -ql jbk1.8.-1.8.0_291-fcs.x86_64 1. #修改配置文件 vim /etc/profile.d/java.sh   export JAVA_HOME/usr/java/default export PATH$JAVA_HOME/bin:$PATH   2. #刷新配置文件 java -version                   #查看之前的版本 source /etc/profile.d/java.sh   #执行脚本 java -version                   #查看刷新后的版本 2.2 二进制安装启动Tomcat 第一步解压tomcat程序 1. #切换至/opt下解压tomcat包 cd /opt tar -xf apache-tomcat-9.0.16.tar.gz    2. #将解压后的包拷贝至/usr/local/下并重命名 cp -r apache-tomcat-9.0.16 /usr/local/tomcat 1. #切换至拷贝的目录下启动tomcat cd /usr/local/tomcat/ /usr/local/tomcat/bin/startup.sh   2. #看是否启动成功 ss -natp |grep 8080   3. #在网页测试是否可以成功登录 192.168.200.14:8080本机IP地址   4. #关闭tomcat记得再次打开 /usr/local/tomcat/bin/shutdown.sh 2.3.将Tomcat添加至服务1. #先关闭服务 /usr/local/tomcat/bin/shutdown.sh   2. #添加用户设置属主属组 useradd -s /sbin/nologin tomcat chown tomcat:tomcat /usr/local/tomcat/ -R   3. #新建服务文件 vim /usr/lib/systemd/system/tomcat.service  [Unit] DescriptionTomcat #Aftersyslog.target network.target remote-fs.target nss-lookup.target Aftersyslog.target network.target   [Service] Typeforking ExecStart/usr/local/tomcat/bin/startup.sh ExecStop/usr/local/tomcat/bin/shutdown.sh RestartSec3 PrivateTmptrue Usertomcat Grouptomcat   [Install] WantedBymulti-user.target   4. #重新加载服务并开启查看是否成功启动 systemctl daemon-reload systemctl start tomcat ss -ntap |grep 8080 三.Tomcat服务优化 3.1 Tomcat虚拟主机配置 使用环境很多时候公司会有多个项目需要运行那么肯定不可能是一台服务器上运行多个Tomcat服务这样会消耗太多的系统资源。此时就需要使用到 Tomcat 虚拟主机。例如现在新增两个域名 www.a.com 和 www.b.com希望通过这两个域名访问到不同的项目内容。 第一步创建 a 和 b 项目目录和文件 1. #创建 a 和 b 项目目录与文件 cd /usr/local/tomcat/webapps mkdir a b   2. #创建文件内容 echo this is a web a/index.html echo this is b web b/index.htmlB 第二步修改 Tomcat 主配置文件 #修改主配置文件 vim /usr/local/tomcat/conf/server.xml  约164行位置插入 -----------------------------------------------------   /Host           Host namewww.a.com  appBase/usr/local/tomcat/webapps unpackWARstrue autoDeploytrue               xmlValidationfalse xmlNamespaceAwarefalse               Context docBase/usr/local/tomcat/webapps/a                 path reloadabletrue /      /Host         Host namewww.b.com  appBase/usr/local/tomcat/webapps unpackWARstrue autoDeploytrue               xmlValidationfalse xmlNamespaceAwarefalse               Context docBase/usr/local/tomcat/webapps/b                 path reloadabletrue /      /Host systemctl restart tomcat.service  systemctl status tomcat.service  Host name 主机名 appBase Tomcat程序工作目录相对路径为webapps绝对路径为/usr/local/tomcat/webapps unpackWARs 是否解压war包 autoDeploy 指示Tomcat运行时如有新的WEB应用是否允许自动部署 xmlValidation 是否验证xml文件执行有效性检验的标志 xmlNamespaceAware 是否启用xml命名空间设置该值与xmlValidation为true表示对web.xml文件执行有效性检验 appBase WEB应用的目录 path 设置访问的URI为WEB应用的根目录 reloadable 是否在程序有改动时重新载入 第三步重启服务并验证 1. #本机关闭防火墙并重启服务 systemctl restart tomcat systemctl stop firewalld setenforce 0   2. #再开启一台centos虚拟机更改/etc/hosts文件并关闭防火墙 echo 192.168.200.14  www.a.com  www.b.com /etc/hosts systemctl stop firewalld setenforce 0   3. #在网页中测试 www.a.com:8080/a www.b.com:8080/b 3.2 Tomcat配置参数优化  Tomcat默认安装下的缺省配置并不适合生产环境它可能会频繁出现假死现象需要重启只有通过不断压测优化才能让它最高效率稳定的运行。优化主要包括三方面分别为操作系统优化内核参数优化Tomcat配置文件参数优化Java虚拟机JVM调优。 常用的优化参数 参数                                    解释 [ maxThreads]    Tomcat 使用线程来处理接收的每个请求这个值表示Tomcat可创建的最大的线程 数默认值是200, [minSpareThreads]    最小空闲线程数Tomcat启动时的初始化的线程数表示即使没有人使用也开这么多空线程等待默认值是 10, [maxSpareThreads]    最大备用线程数一旦创建的钱程超过这个值Tomcat就会关闭不再需要的socket线程。默认值是-1(无限 制)。一般不需要指定。 [URIEncoding]    指定Tomcat容器的URL编码格式语言编码格式这块倒不如其它Web服务器软件配置方便需要分别指定。 [connnectionTimeout]    网络连接超时单位:堂秒设置为0表示永不超时这样设置有隐患的。通常默认20000室秒就可以。 [enableLookups]    是否反查域名以返回远程主机的主机名取值为:true或false如果设置为false则直接返回IP地址为 了提高处理能力应设置为false。 [disableUploadTimeout]    上传时是否使用超时机制。应设置为true. [connectionuploadTimeout]    上传超时时间毕竟文件上传可能需要消耗更多的时间这个根据你自己的业务需要自己调以使Servlet有较 长的时问来完成它的执行需要与上一个参数一起配合使用才会生效。 [acceptcount]    指定当所有可以使用的处理请求的线程数都被使用时可传入连接请求的最大队列长度超过这个数的请求将 不予处理默认为100个. [compression]    是否对响应的数据进行GZIP压缩off表示禁止压缩on表示允许压缩文本将被压缩、force表示所有情况下都进行压缩默认值为 off压缩数据后可以有效的减少页面的大小一般可以减小 1/3 左右节省带宽。 [compressionMinSize]    表示压缩响应的最小值只有当响应报文大小大于这个值的时候才会对报文进行压缩如果开启了压缩功能默认值就是 2048。 [compressableMimeType]    压缩类型指定对哪些类型的文件进行数据压缩。 [noCompressionUserAgents“gozilla, traviata”]    对于以下的浏览器不启用压缩
http://www.hkea.cn/news/14329852/

相关文章:

  • 大连网站建设方案青羊区网站建设
  • 燕郊做网站公司网站建设能赚钱吗
  • 网站建设技术服务的方式是什么意思小米手机优化
  • asp网站建设教案新手学做网站 pdf 下载
  • 百度推广优化是什么?麻城seo
  • 常见网站建设公司术语网站开发前期调研
  • 官方网站建设案例开封网站制作哪家好
  • 建设网站方案ppt昆明网站建设猫咪
  • 网站建设合同首付多少钱杭州建设职业技术学院招聘信息网站
  • 做网站的客户需求seo软文外包公司
  • 上传到网站去的文档乱码响应式网站 教程
  • 张店网站制作设计公司wordpress建立ftp
  • 深圳 网站优化公司排名wordpress tag标签页
  • 帮别人做网站服务器深度苏州自媒体公司
  • 顺德做外贸网站免费网页模板源代码
  • 上海建站价格建立保密工作风险评估监测预警
  • 用网站模板给人做网站挣钱吗加强网站建设的原因
  • 三水建设局招标网站电商网站建设解决方案
  • 南京装修公司做网站万网企业网站建设
  • cms建站系统无锡名气大的网页设计
  • 购销网站建设视频百度云公司介绍网站源码
  • 中国建设部网站四库平台扬州seo博客
  • 怎么做网站自动采集数据天蝎做网站建网站
  • 为什么网站权重会掉推广公司简介
  • 九冶建设有限公司官方网站网站建站公司模板
  • 黄页88网是什么性质的网站上海做网站天锐
  • 网站开发实训的心得青海公路建设服务网站
  • 介绍做ppt高大上图表的网站品物设计集团
  • 关于我校校园网站建设的调研报告百度推广客户端下载网址
  • 云梦县建设安全网站txt怎么做pdf电子书下载网站