我有一个Tomcat服务器,它提供许多webapps,每个webapps都有很多servlet。 有时,单个webapp的单个servlet内存不足,然后整个Tomcat崩溃,出现Java“内存不足”错误,我必须重新启动它。 有没有办法孤立的servlet,所以当它运行的内存,它不会崩溃所有其他的应用程序? 我目前在Windows上运行Tomcat 7,但是我很快就会转向Linux,因此欢迎这两个平台的回答。
目前我们有以下设置。 硬件负载平衡器(LB) Box 8080(TA)上运行的Tomcat 运行Tomcat的Box 8080(TB) TA和TB在LB后面运行。 现在,使用Box A或Box B从LB中进行零宕机部署是相当复杂和手动的工作。 我正在想做这样的事情: 硬件负载平衡器(LB) Box A在8080(NA)上运行Nginx Box 8081上运行的Tomcat(TA1) Box 8082上运行的Tomcat(TA2) 在B80上运行Nginx的Box B(NB) 在8081上运行Tomcat的Box B(TB1) 在8082上运行Tomcat的Box B(TB2) 基本上LB现在将指挥NA和NB之间的stream量。 在每一个Nginx的我们将有TA1,TA2和TB1,TB2configuration为上游服务器。 一旦上游的健康检查页面中的一个没有响应(closures),stream量将转到另一个(Nginx上的HttpHealthcheckModule模块)。 所以部署过程很简单。 说,TA1是活跃的0.1版本的应用程序。 TA1上的健康检查是可以的。 我们开始TA2与Healthcheck作为错误。 所以Nginx不是在跟它说话。 我们将应用程序版本0.2部署到TA2。 确保它的工作。 现在,我们将TA2上的Healthcheck切换到OK,将Healthcheck切换到TA1以ERROR。 Nginx将开始为TA2服务,并且将移除TA1。 完成! 现在和另一个盒子一样。 虽然听起来很酷,但是我们怎么“饿死”Nginx呢? 假设我们有待处理的连接,TA1上的一些用户。 如果我们closures它,会话将会中断(我们有基于cookie的会话)。 不好。 任何使用Nginx来阻塞上游服务器的stream量? 谢谢!
我一直在使用Ubuntu服务器上的Tomcat 7的一个小网站。 但是还有其他的进程在服务器上运行,我认为Tomcat在CPU和内存上都有很高的负载。 因此,我很好奇,如果我可以把Tomcat服务器的睡眠模式,而没有响应。 有没有办法做到这一点在服务器上自动或有其他的servlet容器,我们可以做到这一点?
我试图转发一个端口从80到8080(默认为tomcat)。 下面是我添加到httpd文件。 <VirtualHost www.example.com:80> ProxyPreserveHost On ProxyRequests Off ServerName www.example.com ServerAlias example.com ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ </VirtualHost> 增加这个之后,没有任何改变的迹象。 代码有什么问题吗? Centos 5.9 Apache 2.2 tomcat 7 WHM /的cPanel。 更新: 我的目标域名是www.99rounds.com:80直接到:8080 更新2添加了答案中的代码,并删除了两行日志。 我得到: 请注意,如果我强制centos有内置的mod_proxy支持:loadModule …它会给我错误说它的内置。
我已经在公司局域网内的服务器上设置了基本的tomcat网站(tomcat 8.0.3)。 从我的工作电脑,如果我尝试访问该网站通过在谷歌浏览器中键入它不工作。 运行Tomcat服务器的计算机的IP是192.1xx.132.125:8080 。 我的工作电脑的IP是192.1xx.129.75 。 我能ping我的工作电脑到服务器。 如果我在我的PC上的谷歌Chrome浏览器上inputhttp://192.1xx.132.125:8080 , http://192.1xx.132.125:8080出现以下错误。 有人可以指出为什么发生这种情况? 另外我的networking服务器是无头的。我可以使用curl访问该服务器上的网页。 由于这是一个非传统的端口号,我是否需要更新我的服务器上的IP表? 我已经运行这个命令 sudo iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT -m comment –comment "Tomcat Server port" 如http://serverfault.com/questions/341804/opening-up-port-8080-in-centos
我在一个服务器上有一个Staic IP,可以通过Internet公开访问。 我在该服务器上运行Apache WebServer。 我该如何做 – 在3个不同的内联网PC上运行的3个Web应用程序(在Tomcat上) – 通过互联网可用 – 使用一个我公开的可访问IP。 需要注意的是,Static-IP Server Machine可以有两个网卡,也可以访问内网PC。 请build议最好的方法来解决这个问题。 非常感谢。
我已经注意到了几个关于如何检查Java应用程序在Linux上的内存使用情况的主题,但是即使在Google上,我也很难find任何有关在Windows上执行这种检查的快捷方法。 情况是,我已经把Tomcat作为Java Servlet容器运行,在Servlet容器中运行一个Servlet并在端口9300上监听。如何检查/监视/logging其内存使用情况?
我需要在现有的PHP服务器(Linux)上运行ColdFusion应用程序。 我在服务器上安装了tomcat,但是Railo占用了所有的stream量。 我希望它安装,只有在/ webapps / ROOT /通过Railo服务器,其他所有通过现有的PHP服务器的请求。 服务器不是我自己的,我的安装Railo打破其他用户的网站。 有什么办法可以做到这一点? PS:我对Linux不是很熟练,拥有它的公司完全没有支持,所以和他们交谈正在向前迈进两步。
我为我的本地networking设置了一个Apache Tomcat Web服务器,为了安全起见,我想阻止来自本地networking(互联网)以外的任何外部访问。 我可以configurationtomcat来做到这一点? 编辑:我在Windows机器上使用tomcat 8.0。
好吧,为了保持运行顺利,本周末我们的公司重新启动了我们的互联网网站运行的Linux服务器。 周一上午来,我们不能到达现场。 我可以ping通电脑,但我不知道这是多less钱。 这是一个运行Apache和Tomcat的Linux红帽企业版5机箱,带有一个Java网站。 不幸的是,以前pipe理该网站的人员不再为公司工作,目前也无法实现。 在他离开之前,他没有时间去更新我们任何一个开发人员或者剩下的IT人员。 我们相信可能有一个启动脚本来启动服务,但我们并不完全确定。 我不希望有人告诉我如何解决这个问题,但如果你能帮助解决这些问题,我会很感激。 如何validation服务器上运行的Apache和Tomact? 在Linux上哪里可以放置一个脚本可以在启动时运行的目录? 我在usr / local中看到Tomcat,并尝试从bin目录运行startup.sh/startup.bat,但没有发生任何事情。 我应该尝试从命令行运行还是GUI的罚款。 什么顺序最好启动服务? 编辑 感谢大家的帮助。 那家伙终于打电话给我们了 非常感激。