今天给客户部署新系统,一个 前台应用,一个后台应用,由于用的是同一个架子,日志文件路径也没改,所以两个应用的日志文件是同一个文件,这样应用运行时,就会出现只能访问一个应用的情况,如果两个应用同时访问,两个应用都会奇慢。

事情是这样的:

部署完之后,同时访问两个应用测试一下,发现出奇慢,根本加载不出来;

就去查找日志文件;没发现什么奇怪的东西;用vi命令查看日志文件的时候,整个系统都变得非常卡;

查看内存,几乎都用上了;

用下面的命令查看内存的使用情况;

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

发现前面3个都是tomcat的,如下是其中一个,奇怪,怎么会有3个?

root      3493 10.5 13.2 4658452 1067264 pts/0 Sl   23:13   0:53
/opt/deploy/jdk1.8.0_73/bin/java -Djava.util.logging.config.file=/opt/deploy/apache-
tomcat-7.0.63/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -
Djava.endorsed.dirs=/opt/deploy/apache-tomcat-7.0.63/endorsed -classpath
/opt/deploy/apache-tomcat-7.0.63/bin/bootstrap.jar:/opt/deploy/apache-tomcat-
7.0.63/bin/tomcat-juli.jar -Dcatalina.base=/opt/deploy/apache-tomcat-7.0.63 -
Dcatalina.home=/opt/deploy/apache-tomcat-7.0.63 -Djava.io.tmpdir=/opt/deploy/apache-
tomcat-7.0.63/temp org.apache.catalina.startup.Bootstrap start

进程杀掉,内存瞬间都释放了;

继续重启,还是老样子;

由于日志运行了很久了,就想把日志文件删了,重新看下;

文件一删,一直在加载中的两个网页,突然一下都加载出来了;

突然想到,这两个应用的日志文件路径相同;

很可能是两个应用获取这个文件的写权限时死锁了;

于是更改了其中一个应用的日志路径;

于是问题解决;

这时用上边的查看内存使用情况的命令查看,就只有一个tomcat了;

有时间再测试下这个3个tomcat进程的问题!

转自http://blog.csdn.net/xichenguan/article/details/51020518

Tomcat部署多个应用时日志文件路径相同引起的问题的更多相关文章

  1. How to:如何在调用外部文件时调试文件路径(常见于使用LaunchAppAndWait和LaunchApp函数)

    原文:How to:如何在调用外部文件时调试文件路径(常见于使用LaunchAppAndWait和LaunchApp函数) IS里调用外部文件的时候,一般都是用LaunchAppAndWait函数,比 ...

  2. log4j日志文件路径设置

    假设有如下标准化的目录结构: $HOME |-- log |-- conf |-- bin |-- lib |-- data jar包放在lib目录,启动脚本放在bin目录,日志文件放在log目录,配 ...

  3. mysql日志文件路径

    SHOW VARIABLES LIKE 'general_log_file';日志文件路径SHOW VARIABLES LIKE 'log_error';错误日志文件路径SHOW VARIABLES ...

  4. Tomcat 部署两个工程时,另一个访问出现404

    tomcat下部署两个工程时,只有一个可以访问,另一个出现404错误,该如何解决 在开发新项目的时候,有时候为了省时,直接把曾经做过的项目工程A拷贝成改名为B工程,然后再在B工程上进行功能的开发, 此 ...

  5. eclipse,tomcat部署web项目,以及本地文件访问

    1.直接把项目复制到Tomcat安装目录的webapps目录中,这是最简单的一种Tomcat项目部署的方法,也是初学者最常用的方法. 2.在tomcat安装目录中有一个conf文件夹,打开此文件夹,其 ...

  6. Java - 自动配置log4j的日志文件路径

    目录 1 日志路径带来的痛点 2 log4j.properties文件的配置 3 彻底解决痛点 3.1 单独的Java程序包 (非Java Web项目) 3.2 Web项目 4 附录 - 获取当前项目 ...

  7. MYSQL 日志文件路径错误 1067错误

    场景再现: ---------------------------------------------------------------------------------------------- ...

  8. Log4j 2X 日志文件路径问题

    关于路径问题网上说啥的都有,但是也不能说人家错,只能说不适合你这个. 一开始,我用的   ${webapp.root} <RollingFile name="rollingFileSy ...

  9. 如何让tomcat不记录catalina.out这个日志文件

    tomcat日志记录配置在conf/logging.properties中 有这5类日志 catalina,localhost,manager,admin(控制台),host-manager 还有8个 ...

随机推荐

  1. python基础--用python执行系统命令

    from os import system print(system('ping www.baidu.com'))

  2. linux sort的用法

    sort -n 表示按照数字 sort -k 表示第几列 sort -t : 表示按照:来分列 sort -r  表示从大到小排列

  3. 安装bcc

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D4284CDD echo "deb https://repo.i ...

  4. BZOJ4552 [Tjoi2016&Heoi2016]排序 【二分 + 线段树】

    题目链接 BZOJ4552 题解 之前去雅礼培训做过一道题,\(O(nlogn)\)维护区间排序并能在线查询 可惜我至今不能get 但这道题有着\(O(nlog^2n)\)的离线算法 我们看到询问只有 ...

  5. 当鼠标点击input框时,想让全选input框的所有内容只需要加“onfocus="this.select();”就可以了

    当鼠标点击input框时,想让全选input框的所有内容只需要加“onfocus="this.select();”就可以了

  6. Fix error of "you have been logged on with a temporary profile"

    You have been logged on with a temporary profile on windows2008 R2 After looking into this issue, I ...

  7. Fiddler抓取HTTP请求

    参考链接:http://blog.csdn.net/ohmygirl/article/details/17849983/ http://www.cnblogs.com/kingwolf_JavaScr ...

  8. 行为型设计模式之解释器模式(Interpreter)

    结构 意图 给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子. 适用性 当有一个语言需要解释执行, 并且你可将该语言中的句子表示为一个抽象语法树时,可使用 ...

  9. C 语言中char* 和const char*的区别

    const char *p = "123"; p[1] = '3'; // 会报错p = "456"; // 不会报错 const char * 只是说指针指向 ...

  10. Linux之epoll详细解析实现

    /* * fs/eventpoll.c (Efficient event retrieval implementation) * Copyright (C) 2001,...,2009 Davide ...