提高JAX-RS应用程序的性能

时间:2018-08-22 10:55:36

标签: java performance rest jax-rs websphere-liberty

我一直在为Java Restful Web服务开发JAX-RS应用程序。

应用程序遇到性能问题,负载很大。

通常,处理一个请求大约需要400毫秒(0.4秒),但是当我复制同一请求1000次时,处理每个请求的时间会增加到30000毫秒(30秒)。

使用jax-rsCDI InjectionjaxbJDBC这是一个相当简单的应用程序。

服务器为IBM WAS with Liberty Profile

部署在具有2个吊舱/节点的docker容器上。

我如何提高此应用程序的性能?

1 个答案:

答案 0 :(得分:3)

Kishor,

在WebSphere Liberty的更高版本中,与线程池相关的吞吐量已进行了多项性能改进。您的问题没有提供有关您正在使用的WebSphere Liberty级别的信息。此外,WebSphere Liberty中的JAX-RS功能还进行了一些性能改进,这可能也是有益的。

如建议的那样,您需要通过分析瓶颈来确定是什么原因导致速度下降。通常它是某种资源。例如,网络,CPU,内存,磁盘,锁等。使用详细GC运行是开始并查看垃圾回收活动的好地方。如果您的堆没有针对要执行的负载进行适当配置,则垃圾收集暂停可能会导致您的问题,但还有许多其他可能性。立即进行排除是一个很好的选择,因为这样做很容易。

如果您提供的WebSphere Liberty版本号将帮助人们为您提供有关可能有用的更多信息。