我使用JAXWS创建了Webservice,并将其托管为jboss6中的无状态会话bean。 以下是Web服务代码:
@Stateless
@WebService(serviceName = "CommonSmsServices", name = "CommonSmsServices", wsdlLocation = "META-INF/wsdl/CommonSmsServices.wsdl", endpointInterface = "com.sms.webservice.common.CommonServices")
public class CommonServicesImpl implements CommonServicesLocal,CommonServicesRemote {
//.....
// methods
//.....
}
单个Http会话可以正常工作。现在我在运行多个会话时遇到问题,响应时间变得非常慢。 我为你的内存和线程采样做了YourKit porfiling。内存利用率看起来不错但在线程部分,它显示一个htpp线程正在等待其他线程完成。
我还浏览了Java EE会话bean文档。它说会话bean是单线程的。会话bean是否存在同时处理多个Http会话的性能问题?
JBoss AS 6中是否有方法或配置来提高我的Web服务性能?
答案 0 :(得分:1)
在EJB(包括无状态的)中,容器支持多线程。如果您希望将数据存储在不同的调用之间,则可能应该使用Statefull bean;这也支持多线程。