Articles of jboss

debuggingJBoss 100%的CPU使用率

我们使用JBoss来运行我们的两个WAR。 一个是我们的networking应用程序,另一个是我们的networking服务。 Web应用程序访问另一台计算机上的数据库并向Web服务发出请求。 Web服务向其他机器发送JMS请求,汇总数据并返回。 在我们最大的客户端,大约每月一次的JBoss Java进程占所有CPU的100%。 运行JBoss的机器有8个CPU。 我们的networking应用程序在这段时间仍然可以访问,但是页面大约需要3分钟才能加载。 重新启动JBoss恢复一切正常。 数据库机器和所有其他机器都很好,只有运行JBoss的机器受到影响。 内存使用情况正常。 networking利用率是正常的。 JBoss日志中没有可疑的错误消息。 我已经build立了一个尽可能接近客户端生产环境的testing环境,并且已经完成了多达两倍的并发用户负载testing。 我还没有得到我的testing环境来复制这个问题。 我们从哪里出发? 我们怎样才能缩小这个问题? 目前我们唯一的计划是等到问题发生在自己的生产中,然后做一些debugging来确定原因。 到目前为止,人们刚刚重新启动JBoss,当问题发生,以最大限度地减less停机时间。 下次发生的时候,他们会让开发者看一看。 问题是,下次发生什么事情可以做,以确定原因? 我们可以在同一个盒子上设置一个单独的JBoss实例,并从Web服务中单独安装Web应用程序。 这样当下一个问题发生时,我们将知道哪个WAR有问题(假设它是我们的代码)。 尽pipe如此,这并没有缩小范围。 我应该启用JMX远程吗? 这样下一次发生问题时,我可以连接到VisualVM,看看哪些线程正在使用CPU,他们在做什么。 但是,在生产环境中启用JMX远程控制是否有重大缺陷? 有没有另外一种方法来看看哪些线程正在吃CPU,并得到一个堆栈跟踪,看看他们在做什么? 任何其他的想法? 谢谢!

Java应用程序托pipe

我做了一个在我的电脑上运行glassfish v3的web应用程序。 这不是一个大的应用程序,我不期待很多的stream量。 所有支持玻璃鱼的主机都非常昂贵(每月大约40美元),这至less在一开始就是这样。 我发现在有JBoss或Tomcat的服务器上它比较便宜,但是我的应用程序能在这些服务器上工作吗? 我的应用程序使用jsf 2.0和hibernate。 如果能做到的话会有什么不利之处,能不能指导我到一个可以做这件事的地方,甚至可以帮我做。 谢谢

使用haproxy和mod_jk负载平衡JBoss

我一直致力于探索为JBoss开发的专业应用程序构build一个非常失败的configuration的方法。 我有一个固定的硬件configuration(服务器已经被选中,他们意味着每秒处理数以千计的连接),更多的软件方面的自由。 我最初的目的是使用VRRP ,通过专用的L3交换机或通过keepalived , haproxy通过故障转移,负载均衡configuration提供对Apache的访问。 (参考: http://www.formilux.org/archives/haproxy/1003/3259.html 如何设置HAProxy故障转移? ) 这是我第一次在做家庭作业的时候需要部署JBoss,我读到mod_jk本质上有一个loadbalancer本身,可以在一个Apache实例和多个JBoss实例之间工作。 我的问题是:如果我configurationhttp负载平衡HAProxy和AJP / JBoss负载平衡与mod_jk我会得到任何好处吗? 它会以任何方式搞砸负载平衡甚至是应用服务器的function吗? 以下是预期configuration的图表: 我们仍然处于devise阶段,所以这就是为什么没有更多的细节。 如果需要的话,我可以提供它们,但是我相信这是关于部署JBoss + Apache时不同负载平衡机制工作的一般性问题。 我也没有考虑数据库,这是我们接下来要解决的问题。

OpenShift:连接到JBoss EAP 6pipe理(SSH隧道?)

我试图在OpenShift上连接到JBoss EAP 6实例pipe理。 直接连接不起作用(防火墙),所以我想build立一个SSH隧道: ssh -L 10999:localhost:9999 683…@web-ozcz.rhcloud.com 接着 jboss-eap-6.1/bin/jboss-cli.sh –gui –controller=localhost:10999 但是在服务器端,我得到这个: channel 3: open failed: connect failed: Connection refused 我如何连接到pipe理CLI? 如何设置系统来允许SSH隧道?

OOM杀手,JBoss和核心恐慌

我们在带有6GB RAM的VMWareEx3.5(x64)上运行RedHat 3.4.6(x32)。 一些java进程(包括jboss)正在后台运行。 问题是java进程消耗大量的内存,有时他们被OOM杀手杀死。 当OOM杀手即将起作用时,空闲物理内存非常低,为100MB-200MB,但不使用交换(99%免费)。 有时这也会导致内核恐慌。 那么为什么不使用交换? 如何调查这个内核恐慌? 在32位Redhat上使用6GB内存? 谢谢

JBoss ASpipe理控制台的证书?

一个简单的新手JBoss问题。 我已经安装了JBoss 5.1.0 GA(从这里开始 )并正在运行,并且正在尝试访问pipe理控制台: 什么是默认的凭据(如果有的话),你在哪里configuration这些? 我在JBoss 安装和入门指南中找不到答案。 服务器运行的是Ubuntu 9.10,但我相信这是不相关的,因为JBoss是安装在包pipe理之外的。

如何在多核环境中充分利用JBOSS

我在一个多核系统中部署jboss,我将拥有12到20个核心,当我运行jboss服务器时,我只看到1个进程在运行,而且我觉得它不会使用多个核心。 .. 有没有什么方法可以使用更多的内核或者jboss是否聪明,在这个过程中是使用更多的线程还是其他的东西? 我在Power7系统上使用AIX 6.1。 JVM J9 1.6

JBoss基本访问

我已经在Solaris 10上部署了JBoss 5 – 服务器连接具有不受限制的高端口(> 1023)对互联网开放。 我可以通过SSH和FTP从同一子网上的第二台服务器和互联网上的任何地方访问该框。 JBoss运行在端口8080上,可通过盒子上的http:// locahost:8080访问。 我无法通过http://ip.add.goes.here:8080从同一子网中的其他服务器或通过Internet访问它。 JBoss或Solaris 10中的其他地方是否有任何服务或configuration需要从默认更改为允许HTTP通信服务?

运行JBoss作为服务的正确方式是什么?

我正在AIX 6下的JBoss下运行一个APP,运行JBoss的正确方式是使用./run.sh脚本,但是脚本运行在前台,而不是后台运行大量的debugging信息到标准输出,而不是日志文件,和任何CTRL + C或closures或任何将打破它… 我如何正确地将其放在背景上,并将日志logging发送到另一个地方?

使用mod_cluster保护SSL请求?

如果我在安全局域网中同时使用httpd和JBoss,是否可以在httpd上终止SSL请求,并通过mod_cluster将请求传递给可用的JBoss? 任何想法什么configuration涉及?