我有使用mod_jk连接器与Apache服务器连接的Tomcat应用程序服务器。 两者都在不同的服务器上运行。 Apache —–> ——防火墙—–> —— Tomcat 在过去的几天里,我看到Tomcat AJP连接器池中的线程数正在被填充(100%)而我在Apache服务器中看到错误。 故障排除步骤:我停止了Apache服务器并在Apache服务器上运行以下命令 > netstat -an | grep 8009 | wc -l 0 然后,我在Tomcat服务器上运行相同的命令,我可以看到从Apache到AJP端口的许多连接仍处于build立状态。 > netstat -an | grep 8009 tcp 0 0 :::8009 :::* LISTEN tcp 0 0 ::ffff:192.168.1.75:8009 ::ffff:192.168.10.75:56840 ESTABLISHED tcp 0 0 ::ffff:192.168.1.75:8009 ::ffff:192.168.10.75:56838 ESTABLISHED —deleted remaining lines—- 我已经等了1-2个小时,我可以看到这些陈旧的连接仍然存在。 我有以下的Tomcat设置: tomcat.maxthreads=200 tomcat.minsparethreads=50 tomcat.maxidletime=10000 tomcat.acceptcount=100 线程转储显示以下线程: […]
我在Tomcat遇到问题: 在干净的安装,连接到[IP地址]:8080超时。 我看到很多类似的问题,基本上都尝试过,没有成功。 但是,这里是我所有有关类似问题的数据: 版本:Tomcat 7 Linux:Ubuntu iptables -L输出: Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination netstat -nat | grep:8080输出 tcp6 0 0 :::8080 :::* LISTEN telnet localhost 8080输出 Trying 127.0.0.1… Connected to localhost. Escape […]
我目前有一个带有Java 1.6和Apache Tomcat / 6.0.18的512Mb内存的Linux服务器。 我目前托pipe一个Web应用程序,但我打算移动三个更多的应用程序到这个Tomcat实例。 我的setenv.sh文件是: JAVA_OPTS="-Xms16m -Xmx256m -XX:MaxPermSize=128m -Djava.awt.headless=true" 当我执行免费-m total used free shared buffers cached Mem: 512 461 51 0 60 52 -/+ buffers/cache: 348 164 Swap: 127 3 124 有时使用的内存会上升到506左右。 我想我必须升级内存。 我正在考虑800 Mb或1 Gb。 你认为是一个好主意吗? 我会看到这个改进吗? 如何在升级后configuration我的seteven.sh文件?
以root身份直接在端口80(或443)上运行tomcat(来自spring源码的tcServer)是一个好主意 我们可以使用mod_proxy或mod_jk来解决这个问题。 我也看到了基于iptables的解决scheme(即iptables -t nat -A PREROUTING -p tcp -dport 80 -j REDIRECT -to-ports 8080) 生产用途中应该知道哪些优点/缺点?
我们正在开发一个在tomcat下运行的Web应用程序,它依赖于Java用户首选项来存储所有types的设置。 这很好,但我们遇到了问题,我们需要build立另一个临时Web应用程序,它允许您在设置之前testing设置。 问题的核心在于,Java用户首选项对于所有Web应用程序是相同的,因为它们全部在tomcat用户下运行(可configuration)。 由于遗留的原因,我不能在现在改变我的偏好结构,所以我希望在tomcatconfiguration方面的解决scheme。 是否有可能为tomcat中的特定Web应用程序指定不同的用户凭证? 谢谢,波阿斯
我正在运行tomcat 6.0,并有麻烦configuration它做我想要的… 我有两个Web应用程序,称为X和Y,部署为X.war和Y.war。 每个都有一个叫做blah的servlet。 所以我可以像这样访问它们: http:// server / X / blah http:// server / Y / blah 我想要做的是假装他们是一个Web应用程序Z,并能够做到这一点: http:// server / Z / X / blah – >就好像我去了http:// server / X / blah http:// server / Z / Y / blah – >就好像我去了http:// server / Y / blah 所以我改变了(catalina_home)/conf/Catalina/localhost/X.xml,如下所示:<context override =“true”path =“/ Z / X”reloadable […]
我如何使用ssl来保护tomcat的应用程序pipe理器? 我已经有了该网站的证书。 谢谢
当tomcat作为服务启动时,将其输出日志放在\ logs \ stderr.log \ logs \ stdout.log中 当tomcat在Windows启动时如何写这个日志文件? PS。 试图启动tomcat call startup > ../logs/consolelog.log 2<&1 但consolelog.log的输出只有5行 Using CATALINA_BASE: "C:\Java\Tomcat 5.0" Using CATALINA_HOME: "C:\Java\Tomcat 5.0" Using CATALINA_TMPDIR: "C:\Java\Tomcat 5.0\temp" Using JRE_HOME: "C:\Program Files\Java\jdk1.5.0_22" Using CLASSPATH: "C:\Java\Tomcat 5.0\bin\bootstrap.jar" 并在控制台输出很多
说我有一个注册的URL mywebsite.com指向我的服务器与公共IP地址。 我想同时运行tomcat和apache来为页面提供服务(例如,在apache上的一些静态页面和在tomcat上的一些dynamic页面,比如jsp等)。 为了简单起见,我们假设Apache正在侦听8080和8080上的tomcat。 我听说过mod_proxy 。 是否有可能请求mywebsite.com去apache和mywebsite/loggedin去tomcat? 如果是的话,应该如何configuration和在哪里? 谢谢。
我们有一个像下面的脚本来监视我们的服务器。 在这段代码中我们的服务器重新启动。 任何人都可以请解释下面的脚本的含义? if [ -f $HOME/catalinamonitor ]; then echo JVM failed; export JAVA_HOME=/usr/java/jdk1.6.0 $HOME/jakarta-tomcat/bin/shutdown.sh sleep 30 /usr/bin/killall -9 java 2>/dev/null $HOME/jakarta-tomcat/bin/startup.sh rm -f $HOME/catalinamonitor exit 1 fi