设为首页 收藏本站
查看: 609|回复: 0

[经验分享] tomcat7

[复制链接]

尚未签到

发表于 2018-12-2 14:45:18 | 显示全部楼层 |阅读模式
  http://tomcat.apache.org/tomcat-7.0-doc/logging.html
  http://tomcat.apache.org/
catalina[kætə'li:nə] 就是Tomcat服务器使用的 Apache实现的servlet容器的 名字。
Catalina是太平洋中靠近洛杉矶的一个小岛。因为其风景秀丽而著名。最近曾被评为全美最漂亮的小岛。
设计者估计是想把tomcat设计成最美的轻量级容器吧

(1)Web容器---处理静态页面;
(2)catalina --- 一个servlet容器-----处理servlet;
(3)还有就是JSP容器,它就是把jsp页面翻译成一般的servlet。安装相关软件:
  yum install java -y
  yum install tomcat -y
  #安装默认Tomcat根页面(tomcat-webapps)和Tomcat Web应用程序管理器和Virtual Host Manager(tomcat-admin-webapps)
  yum install tomcat-webapps tomcat-admin-webapps -y
  #防火墙
  firewall-cmd --zone=public --add-port=8080/tcp --permanent
  firewall-cmd --reload
  #systemctl stop firewalld.service
  #启动tomcat服务
  systemctl enable tomcat
  systemctl restart tomcat  

  ps aux |grep tomcat
  netstat -anpt | grep java
  

  然后在浏览器里刷http://ip:8080 就可以看到tomcat的页面了
  如何看到自定义页面,也就是部署web应用 ( 三种方式 )
将文件直接放置到webapps目录下的子目录中是无法使用的,原因是tomcat默认加载的是jsp文件,且需要文件配置,在webapps下创建子目录,此处以test、test22为例
  http://ip:8080/test/2.jsp
  http://ip:8080/test22/22.jsp
  测试页面
  
  
  
  tomcat-1
  
  
  Session serviced by tomcat
  
  
  Session ID
  
  
  
  
  Created on
  
  
  
  Now time is:
  
  
  
  
  

  
  最重要的Tomcat的文件位于/usr/share/tomcat
  /usr/share/tomcat/conf/tomcat.conf
  /usr/share/tomcat/webapps
  /var/log/tomcat#日记
  /etc/tomcat/server.xml
  

  两个tomcat中比较重要的概念(通常也是两个系统变量)——CATALINA_HOME和CATALINA_BASE:

  •   CATALINA_HOME:即指向Tomcat安装路径的系统变量
  •   CATALINA_BASE:即指向活跃配置路径的系统变量
    通过设置这两个变量,就可以将tomcat的安装目录和工作目录分离,从而实现tomcat多实例的部署。
  
  Tomcat 的连接器有两种:HTTP和AJP
  版本更新到Tomcat 8.x,Apache Tomcat 7.x是目前开发的焦点
  Linux服务器上的tomcat进程卡死(进程中包含Java和tomcat6.0.3信息)请写下手工杀掉此进程的操作步骤及命令。
  三种工作模式
  bio(blocking I/O):(Tomcat7 或以下,在 Linux 系统中默认使用这种方式)
  nio(new I/O):
  apr(Apache Portable Runtime/Apache可移植运行时)
  三个端口
  Server port端口8080:提供web服务的
  Connector port 端口8005:管理端口
  AJP port端口8009:第三方服务调用端口(如:httpd和Tomcat结合时会用到)
  常见的内存溢出有以下两种:
  java.lang.OutOfMemoryError: PermGen space
  java.lang.OutOfMemoryError: Java heap space
  Java性能优化原则:
  代码运算性能、内存回收、应用配置(影响Java程序主要原因是垃圾回收,下面会重点介绍这方面)
  代码层优化:避免过多循环嵌套、调用和复杂逻辑。
  Tomcat调优主要内容如下:
  1、增加最大连接数
  2、调整工作模式
  3、启用gzip压缩
  4、调整JVM内存大小
  5、作为Web服务器时,与Apache整合或Nginx
  6、合理选择垃圾回收算法
  7、尽量使用较新JDK版本"
  设置不显示项目名称
  修改 Tomcat 安装目录 conf 文件夹下 server.xml, 在 节点下,增加
  
  其中 path 就是 要显示的项目名,这里是不显示,docBase 就是项目所在的路径。
  不支持restart
  
Tomcat服务安全加固
  
  
  
Server Status,Manager App,Host Manager

右边的三个按钮,分别表示进入服务器状态,管理服务器上部署的应用,管理主机界面。
tomcat-users.xml控制用户和登录权限

tomcat-users.xml加入下面的role,再创建一个user,重启服务器输入下面创建的用户名和密码就可以进入管理页面了



    //对应第二个按钮权限

    //对应第三个按钮权限

  



  
  
nginx 解决session共享问题(jvm-route)方式(其实没有真正解决共享问题)
  
  
jvm_route的原理
  这个模块通过session cookie的方式来获取session粘性。如果在cookie和url中并没有session,则这只是个简单的round-robin 负载均衡。

  jvm_route的原理(from 作者 Weibin Yao):
  1. 一开始请求过来,没有带session信息,jvm_route就根据round robin的方法,发到一台tomcat上面。
  2. tomcat添加上session 信息,并返回给客户。
  3. 用户再此请求,jvm_route看到session中有后端服务器的名称,它就把请求转到对应的服务器上。
  暂时jvm_route模块还不支持默认fair的模式。jvm_route的工作模式和fair是冲突的。对于某个特定用户,当一直为他服务的tomcat宕机后,默认情况下它会重试max_fails的次数,如果还是失败,就重新启用round robin的方式,而这种情况下就会导致用户的session丢失。
  总的说来,jvm_route是通过session_cookie这种方式来实现session粘性,将特定会话附属到特定tomcat上,从而解决session不同步问题,但无法解决宕机后会话转移问题。
  


  
  

  监控
  1、使用jdk自带的工具监控tomcat服务器
  2、Tomcat管理页面
  3、elk监控catalina.out
  catalina.out文件以每天进行分割,这样产生的文件就会以每天进行产生
  定时清理7天前的Tomcat日志脚本
  4、开源监控工具zabbix等
  http://www.mamicode.com/info-detail-1851076.html




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-642472-1-1.html 上篇帖子: tomcat Native APR安装 下篇帖子: tomcat Enabling JMX Remote
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表