通过LRWP加速Java技术 - 编程入门网
0。 keepalive 似乎存在一个问题,因为增加其计数实际上并不会阻止服务器建立新 连接。为解决此问题,我们将 TCP_TIME_WAIT_INTERVAL 修改为 1000,并增加了 文件描述符限制。
优化垃圾收集(Garbage Collection)
使用并行收集程序可以将 GlassFish 性能提升为 27K,如 图 1 所示。在 4 核系统上使用并行收集程序之后,原来默认收集程序出现的暂停情况消失了。将 堆大小从 1400m 增加到 3400m 也可以改进性能。将其进一步增加到 7m 可以实 现更大的性能提升。(GlassFish 可能与 64 位 JVM 之间存在一些问题,我们并 没有尝试这一组合。) 优化 Solaris Solaris 10 可以通过优化达到开箱即用的性能。我们将 TCP_TIME_WAIT_INTERVAL 修改为1000(删除此状态连接的时间间隔,默认为 4 分钟),增加文件描述符限制,将 TCP_CONN_REQ_MAX_Q [7] 修改为 10000 并将 TCP_CONN_REQ_MAX_Q0 修改为 1000。此外,我们还在 /etc/system 中添加了 IP:IPCL_CONN_HASH_SIZES 和 TCP_IP_ABORT_INTERVAL 并分别设置为 1000 和 500。
将以下内容添加到 /etc/system
通过LRWP加速Java技术(4)时间:2011-07-08 Sun / Dmitry Isakbayev设置 ndd -set /dev/tcp tcp_time_wait_interval 1000 并增加文件描述符 限制将性能从 4500 CPM 提升到当前数值。这与上文说到的 Keepalive 问题有关 。 在基于 x86 的系统上运行 负载生成 使用 Sun Fire V280(2 个 CPU)和 ApacheBench 工具会生成负载。使用脚 本启动三个 ApacheBench 实例,每个实例都向类似于 http://eagle:1080-/osp 的 URL 发送一个消息。
在服务器端,使用一个 GlassFish 实例在 1080 端口上监听对 LRWP 代理 Web 应用程序的请求,从而监听 "/*" 上下文。 测量 CPS 通过修改 nexus.log 文件测量 Calls per second (CPS) —— 日志文件将显 示 calls per minute (CPM) 数据,我们需求将其转换为 CPS。ApacheBench 还 可以在测试结束时输出 CPS,并且该数据将与日志文件进行比较以确保测试运行 成功。 系统性能 测试环境为 x4100(双核,两个插槽,8GB,2.6Ghz)和 Solaris 10 操作系 统。使用 Solaris 的动态处理器配置工具 psradm 启用/禁用核。 表 1. Xitami/NexSRS 的 CPU 使用率
表 2. GlassFish(使用 Java 实现的 LRWP 代理)/NexSRS 的 CPU 使用率
|
||||||||||||||||||||||||||||||||||||||||||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |