首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 缤纷校园 英语学习 | ||
2010考研 | 自学考试 | 成人高考 | 专 升 本 | 法律硕士 | MBA/MPA | 中 科 院 | ||
四六级 | 商务英语 | 公共英语 | 职称日语 | 职称英语 | 博思 | 口译笔译 | GRE GMAT | 日语 | 托福 | ||
雅思 | 专四专八 | 新概念 | 自考英语 | 零起点英、法、德、日、韩语 | 在职申硕英语 | ||
在职攻硕英语 | 成人英语三级 | ||
等级考试 | 水平考试 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 | ||
公务员 | 报关员 | 报检员 | 外销员 | 司法考试 | 导游考试 | 教师资格 | 国际商务师 | 跟单员 | ||
单证员 | 物流师 | 价格鉴证师 | 银行从业资格 | 证券从业资格 | 人力资源管理师 | 管理咨询师 | ||
期货从业资格 | 社会工作者 | ||
会计职称 | 注会CPA | 经济师 | 统计师 | 注册税务师 | 评估师 | 精算师 | 高会 | ACCA | 审计师 | ||
法律顾问 | 会计证 | ||
一级建造师 | 二级建造师 | 造价师 | 监理师 | 安全师 | 咨询师 | 结构师 | 建筑师 | 安全评价师 | ||
房地产估价师 | 土地估价师 | 设备监理师 | 岩土工程师 | 质量资格 | 房地产经纪人 | 造价员 | ||
投资项目管理 | 土地代理人 | 环保师 | 环境影响评价 | 物业管理师 | 城市规划师 | 公路监理师 | ||
公路造价工程师 | 招标师 | ||
执业护士 | 执业医师 | 执业药师 | 卫生资格 |
◆ BEA WebLogic
◆ IBM WebSphere
◆ Oracle Application Server
◆ JBoss
和其他技术一样,对于J2EE来说,构建一个健壮的、可伸缩的应用并保证其运行在最佳状态是一门艺术,优化应用的运行环境也是一门艺术。掌握这门艺术的关键在于分析应用及其运行基础设置,同时还要求深入观察应用的运行情况。
这个系列的文章主要探讨J2EE应用和应用服务器的性能优化问题。首先介绍性能优化的基本概念,介绍性能优化对于J2EE应用的意义,阐述J2EE环境中可优化的性能因素。
一、什么是性能优化
在深入探讨J2EE应用以及它下面的应用服务器的优化问题之前,首先我们要搞清楚性能优化到底是什么,因为在不同的场合性能优化这一概念有着不同的含义。就的讨论而言,性能优化的目标就是提高下面几个指标:并发用户数量,吞吐量,可靠性。
换句话说,我们希望让应用更快地为更多的用户提供服务,且保证服务过程不会中断。
图1-1:性能优化概况
当一个应用的性能未能满足要求,应当从哪里入手改善其性能?怎样的情况下才必须增加硬件设施?如何通过调整几个应用服务器的参数,获得比添加硬件设备更好的性能效果?这些问题都是实践中经常会遇到的问题,但遗憾的是,许多单位在看到应用的性能未能满足要求时,首先考虑的就是增加硬件设备。增加硬件设备无疑会提高应用的性能表现,但同时也会增加维护费用和硬件体系的复杂程度(更不用说购买硬件设备本身和软件许可的费用了)。
我们的目标应该是首先从现有的应用和应用服务器榨取最大的性能,在此之后才考虑添加硬件设备。从长远来看,单纯靠添加硬件来提高性能很难获得好效果:虽然有可能暂时解决眼前的性能危机,但问题仍旧存在,一旦负载增加了又会出现。
■ 并发用户
在应用服务器上运行应用,评估其在不能响应请求或响应请求所需时间超出许可范围之前能够支持的最大并发用户数量。响应时间可以由服务水准协议(Service Level Agreement,SLA,参见用 SLA 保证 Web 服务 )定义,规定一个请求允许消耗的最长时间,超出该时间就被认为不可接受。对应用进行负载测试时很重要的一点是必须确保测试过程反映了应用实际运行过程中出现的典型事务,因为后来的性能优化措施将针对负载测试的结果进行。如果负载测试的事务不够典型,就不能有效地保证应用能够象测试环境中表现地那样为用户提供服务。
■ 吞吐量
应用和应用服务器的吞吐量可以用每秒完成的事务数量来表示,它从一个侧面反映了应用和应用服务器的运行是否正常,指出了服务器的能力。我们的目标是通过应用和应用服务器的调整,来尽可能地提高服务器的吞吐量。
■ 可靠性
除了支持最大数量的并发用户、可接受的响应时间之外,另一个要求就是尽量减少请求失败的次数。Web服务器都可能出现故障,最主要的原因是网络延迟或超时,而我们优化的主要工作就是确保用户能够收到他请求的信息。