java企业级应用TOMCAT实战

一,   tomcat简介

     tomcat服务器是一个免费的开放源代码的web应用服务器,属于轻量级应用服务器,在中小型和并发访问用户不是很多的场所被普遍使用,是开发和调试JSP的首选,所有静态文件交给nginx处理,所有的动态文件交给tomcat处理。还有resin,weblogic(商用)

二,tomcat安装

1.软件准备:

apache-tomcat-8.0.41.zip

jdk-8u11-linux-x64.tar.gz

2.解压到指定目录(安装java环境)

tar -xf  jdk-8u11-linux-x64.tar.gz -C /usr/local/java

3.验证

java -version

4.安装tomcat

           unzip apache-tomcat-8.0.41.zip  -C /usr/local/tomcat

 

三,tomcat启动及日志

 /usr/local/tomcat/bin/

      •  /usr/local/tomcat/bin/shundown.sh   关闭tomcat
      • /usr/local/tomcat/bin/start.sh              启动tomcat
      • /usr/local/tomcat/bin/version.sh         查看tomcat信息

 /usr/local/tomcat/conf/

      • 用以配置tomcat的xml及DTD文件

 /usr/local/tomcat/logs/

      • catalina和其他web应用程序的日志文件

 /usr/local/tomcat/temp/

      • 临时文件

 /usr/local/tomcat/lib/

      • 存放web应用能够访问的JAR包

 /usr/local/tomcat/license/

      • 认证啥的

/usr/local/tomcat/webapps/

  • docs                        #tomcat帮助文档
  • examples                #web应用实例
  • host-manager         #管理
  • manager                 #管理
  • ROOT                     #默认网站根目录 index.jsp

###正式环境删除docs examples host-manager manager 以及ROOT下面的所有文件###算是一个小优化!!!

启动:

    • chown -R root.root /usr/local/java/ /usr/local/tomcat/
    • systemctl stop firewalld
    •  /usr/local/tomcat/bin/shundown.sh 
    • http://192.168.1.199:8080/

日志:

  • catalina.out  这个日志非常占用空间
  • catalina.2019-01-15.log  每天都会生成一个文件
  • localhost.2019-01-15.log  启动关闭的日志,初始化信息
  • localhost_access_log.2019-01-15.txt 访问日志         

           

四,tomcat配置文件

server.xml      主配置文件

tomcat-users.xml   调试状态把服务器状态打开在倒数第二行插入,在测试环境用,切记切记!!!

 

    • <role rolename="manager-gui"/>
    • <role rolename="admin-gui"/>
    • <user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>
    • 详细

 

 

五,tomcat主配置文件

server.xml详解

  1. 不是#号注释   <!--    -->  才是注释
  2. <Server port="8005" shutdown="SHUTDOWN">   通过一个命令关闭tomcat  生产环境不要用默认的    
  3.  <Connector port="8080" protocol="HTTP/1.1"        默认端口

    connectionTimeout="20000"                          连接超时
    redirectPort="8443" />                             转发另外端口

     

  4. https://www.cnblogs.com/sunshine-1/p/8990044.html   网上详解

六,web站点部署

war包放在webapps上面,重启就自动生存一个文件目录,

默认目录~/webapps/ROOT

如果需要更改默认路径的话:

方法一

       添加如下代码到server.xml(大概在125行)

          <Context path="/eml" docBase="xxxxxx" debug="0" reloadbale="true" privileged="true">

  • Context:表示一个web应用程序,通常为war程序
  • docpath:应用程序胡路径或则是war文件存放的路径,可以使用相对的路径,起始位置为Context所属Host中appBase定义的路径
  • path:表示此web应用程序的URL的前缀。这样请求的url为http://localhost:8888/path/****
  • reloadbale:这个属性非常重要,如果为true,则tomcat会自动检测应用程序的、WEB-INF/LIB 和WEB-INF/classes目录的变化,自动装载新的应用程序的时候,可以在不重启tomcat的情况下改变应用程序

重启tomcat

方法二:

修改appBase:/xxxxxxxxxxxx/xxxxx/xxxxx

多实例最好所有的项目都在一个目录下

七,tomcat多实例

1.复制tomcat目录

  • cp -a /usr/local/tomcat tomcat_1    -a 复制目录而且权限一样
  • cp -a /usr/local/tomcat tomcat_2

2.区分不同实例就是端口号不一样

      • <Server port="8005" shutdown="SHUTDOWN">              #更改关闭端口
      •  <Connector port="8080" protocol="HTTP/1.1"                #更改默认监听端口
      • <Context path="/eml" docBase="eml" debug="0" reloadbale="true" privileged="true">    #更改默认目录

3.然后再根据彼此的绝对路径重新启动

 

八,tomcat集群(其实非常简单!!!)

nginx用来做反向代理

第一步:新建代理池

upstream tomcattool {

    server 192.168.1.10:8081 weight=1 max_fail=3 fail_timeout=20s

    server 192.168.1.11:8082 weight=1 max_fail=3 fail_timeout=20s

}

第二步:更改server标签

server_name    域名或则ip

proxy_pass   http://tomcattool

 

九,tomcat安装jpress

环境准备:

apache-maven-3.6.0-bin.tar.gz

jpress-web-newest.war

安装maven环境

解压maven -C /usr/local/maven

添加到环境变量/etc/profile  然后再source

mvn --version 验证

安装jpress

放到响应目录/usr/local/tomcat/jpress

jar xf jpress-web-newest.war 手动解压

十,systemd一统天下(我也不知道为什么在这里插这个)

/etc/rc.local

/usr/lib/systemd/system

/etc/system/system

 

十一,zabbix监控tomcat

        参照:http://www.ttlsa.com/zabbix/zabbix-use-jmx-monitor-tomcat/

http://blog.51cto.com/moerjinrong/2062945

 因为环境不一样不做深究

 

二,tomcat调优

1.安全优化

  • 降权启动,普通用户启动
  • telnet 管理端口保护
  • ajp连接端口禁用
  • 禁用管理端,删除没有用的目录

2.性能优化

屏蔽dns查询 enableloouups="fault"

最大连接数最小连接数看实际需求

tomcat非常消耗内存php轻量级,java重量级

jvm调优

内存:8G 的内存,默认给1.5G到2G,给系统的4分之1

https://www.cnblogs.com/xingzc/p/5756119.html 有时间可以慢慢看

 

调优总结,一般就是优化内存,CPU,内存,I/O网络,安全等等!!!

 

 

 

posted @ 2019-01-15 15:57  人生苦短我学python  阅读(786)  评论(0编辑  收藏  举报