影响Java EE性能的十大问题
2012-07-17 17:32:27 来源:互联网 评论:0 点击:
- 间进行故障调修。
6.特定应用程序性能问题
下面关注的是比较严重的Java EE应用程序问题。关于特定应用程序性能问题,总结了以下几个点:
- 线程安全的代码问题
- 通信API缺少超时设置
- I/O、JDBC或者关系型API资源管理问题
- 缺乏适当的数据缓存
- 数据缓存过度
- 过多的日志记录
7.Java EE中间件调优问题
一般Java EE中间件都已经够用了,只是缺少必要的优化。大多数Java EE容器都能有多种方案供你的应用程序和业务进程选择。
如果没有进行适当的调整和实践,那么Java EE容器可能会处于一种消极的状态。
下图是视图和检查列表示例:
8.主动监控不足
缺乏监控,并不会带来实际性能问题,但它会影响你对Java EE平台性能和健康状况的了解。最终,这个环境可以达到一个破发点,这可能会暴露出一些缺陷和问题(JVM的内存泄漏,等等)。
以我的经验来看,如果一开始不进行监控,而是运行几个月或者几年后再进行,平台稳定性将大打折扣。
也就是说,改善现有的环境永远都不会晚。下面是一些建议:
- 复查现有Java EE环境监测能力和找到需改进的地方。
- 监测方案应该尽可能的覆盖整个环境。
- 监控方案应该符合容量规划进程。
9.公共基础设施硬件饱和
这个问题经常在有太多的Java EE中间件环境随着JVM进程被部署到现有硬件上面时看到。太多的JVM进程对有限的物理CPU核心来说是一个真正的程序性能杀手。另外,随着客户端业务的增长,硬件方面也需要再次考虑。
10.网络延迟
最后一个影响性能问题的是网络,网络问题时不时的都会发生,如路由器、交换机和DNS服务器失败。更常见的是在一个高度分散的IT环境中定期或间歇性延迟。下面图片中的例子是一个位于同一区域的Weblogic集群通信与Oracle数据库服务器之间的延迟。
间歇或定期的延迟会触发一些重要的性能问题,以不同的方式影响Java EE应用程序。
- 因为大量的fetch迭代(网络传入和传出),涉及大数据集的数据查询问题的应用会非常受网络延迟的影响
- 应用程序在处理外部系统大数据负载(例如XML数据)时也会很受网络延迟的影响,会在发送和接收响应时产生巨大的响应间隔。
- Java EE容器复制过程(集群)也会受到影响,并且会让故障转移功能(如多播或单播数据包损失)处于风险中。
JDBC行数据“预取”、XML数据压缩和数据缓存可以减少网络延迟。在设计一个新的网络拓扑时,应该仔细检查这种网络延迟问题。
希望本文能够帮助您理解一些常见的性能问题和压力点,每个IT环境都是独一无二的,所以文中提到的问题不一定会是您遇到的,您可以把您遇到的问题拿
上一篇:静态图片优化技术研究
下一篇:浅解Facebook的服务器架构
评论排行
- ·Windows(Win7)下用Xming...(92)
- ·使用jmx client监控activemq(20)
- ·Hive查询OOM分析(14)
- ·复杂网络架构导致的诡异...(8)
- ·使用 OpenStack 实现云...(7)
- ·影响Java EE性能的十大问题(6)
- ·云计算平台管理的三大利...(6)
- ·Mysql数据库复制延时分析(5)
- ·OpenStack Nova开发与测...(4)
- ·LTPP一键安装包1.2 发布(4)
- ·Linux下系统或服务排障的...(4)
- ·PHP发布5.4.4 和 5.3.1...(4)
- ·RSYSLOG搭建集中日志管理服务(4)
- ·转换程序源码的编码格式[...(3)
- ·Linux 的木马程式 Wirenet 出现(3)
- ·Nginx 发布1.2.1稳定版...(3)
- ·zend framework文件读取漏洞分析(3)
- ·Percona Playback 0.3 development release(3)
- ·运维业务与CMDB集成关系一例(3)
- ·应该知道的Linux技巧(3)