Tomcat服务Java web应用服务器

Tomcat是Apache软件基金会的jakarta项目中的一个核心项目,是一个开放源代码的Web应用服务器,属于轻量级的应用服务器,在各中小型系统或并发访问量不高的场景中应用非常普遍。具有处理HTML页面的功能,还是一个Servlet和JSP容器。

 

安装前:1、安装JAVA: yum install -y java-1.8.0-openjdk-devel.x86_64

                         java -version 验证查看是否安装成功JAVA 

      

        2、查看8080端口是否被占用:netstat -atunp |grep 8080

安装过程:

    1、上传tomcat到服务器

    2、解压tomcat软件到指定目录/usr/local/:

    tar -zxvf apache-tomcat-8.5.77.tar.gz -C /usr/local/

    3、设置软链接:

    ln -s /usr/local/apache-tomcat-8.5.77 /usr/local/tomcat(用绝对路径)

    4、调用批处理启动tomcat:

                          开启tomcat:./startup.sh

                          关闭tomcat:./shutdown.sh  

    5、查看端口和进程:lsof -i :8080

                       ps -ef |grep tomcat

            tomcat服务默认端口是8080 ,保证安装前未被占用           

    6、访问tomcat页面:192.168.31.136:8080 显示tomcat测试页面

wen.war

Tomcat优化    

1、Tomcat目录结构   

 /bin:脚本文件目录。(开启tomcat)

 /lib:tomcat运行需要的库文件

 /conf:存放配置文件,最重要的是server.xml。

 /logs:存放日志文件。

 /temp:Tomcat运行时候存放临时文件用的。

 /webapps:web应用发布目录。

 /work:存储JSP编译后的class文件的目录

    

2 配置文件

 server.xml:主要的配置文件。

  

 <server>

   <service>

     <connector port />

     <Engine >

         <Host name="localhost" appBase="webapps"

               unpackWARs="true" autoDeploy="true">

            <context path="" docbace="webapps">

            <context />

         </Host>  

     </Engine>

   </Service>

 </Server>

 

  server:代表整个tomcat容器,是整个配置文件中唯一一个最外层的元素。  

  service:作用是在connector和Engine外面包了一层,把它们组装在一起,对外提供服务,一个service可以包含多个connector,但只能包括一个Engine,其中connector是从客户端接收请求,Engine是处理接收来的请求。

  

  connector是接收连接请求,创建request和response对象用于和请求端交换数据。

  

  engine:只有一个Engine组件,它是service中的请求处理组件。从一个或多个connector中接收请求并处理,然后完成后的响应返回级connector,最终传给客户端。

  

  Host:是Engine的子容器。Engine组件中可以内嵌一个或多个Host组件,每个Host组件代表Engine中的一个虚拟主机。Host至少有一个,且其中一个的name必须与Engine组件的defaultHost属性匹配。

  

  context:代表在特定的虚拟主机上运行的一个应用,是Host的子容器,一个context代表一个WEB应用,每个Host可以自定义多个context元素。

  

  

优化:服务器系统优化、系统内核优化、网络优化、服务自身优化(并发优化、底层优化、集群化)

  /etc/security/limits.conf

  3、网络优化:<Connector port="8899" protocol="HTTP/1.1"

               connectionTimeout="20000"

redirectPort="8443"

               compression="on" #开启压缩功能

               nocompressionUserAgents="gozilla,traviata" #对配置的浏览器不启用压缩

               />

 

  4、并发优化:(1)、连接数:maxConnetions(最大连接数)

               (2)、处理线程:maxThreads(最大线程数)

               (3)、等候对列:acceptCount(排队数量),指最大连接数已经满了的时候,允许多少请求排队

  

  maxThreads="500" 默认是200,生产环境中可取500-800

  minSpareThreads="100" 最小空闲线程数,默认是25

  maxQueueSize="100" 线程满时,最大允许等待的队列数,超过此配置则拒绝连接请求

 

46、lsof:用于查看进程打开的文件或文件打开的进程,也可用于查看端口是否为打开状态。lsof命令是系统核心命令,只有root用户才可以执行。

 lsof [选项]

      -c<进程名> 列出指定进程名打开的文件

      -g 列出GID号进程的详细信息

      -i<条件> 列出符合条件的进程

      -u 列出UID号进程的详细信息

      -p<进程号> 列出指定进程号所打开的文件

      

COMMAND 进程的名称

PID 进程的标识符

TID 线程标识符

USER 进程的所有者

FD 文件描述符

TYPE 文件类型

DEVICE 磁盘设备名称

SIZE/OFF 文件大小

NODE 索引节点

NAME 进程打开的文件名称

 

47、kill:用于删除执行中的程序或工作

 

kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]

参数说明:

 

-l <信息编号>  若不加<信息编号>选项,则 -l 参数会列出全部的信息名称。

-s <信息名称或编号>  指定要送出的信息。

[程序]  [程序]可以是程序的PID或是PGID,也可以是工作编号。

使用 kill -l 命令列出所有可用信号。

 

最常用的信号是:

 

1 (HUP):重新加载进程。

9 (KILL):杀死一个进程。

15 (TERM):正常停止一个进程。

 

kill -9 PID

 

cronolog日志分割

添加到httpd.conf

Customlog "|/usr/local/sbin/cronolog logs/access_%d.log" combined

            

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值