【发布时间】:2012-04-07 05:18:01
【问题描述】:
我在我的 Macbook pro 上安装了 Play 框架。在最新的 10.7.3 上玩 1.2.4。 我有 8 GB 内存和 i7 四核 cpu(显示 8 个核心)。
这一切都非常酷,我在玩编码时玩得很开心。但后来我只是想看看我应该在生产中获得什么样的性能,所以我像这样更改了应用程序配置:
prod.application.mode=prod
我的应用程序类只有 1 个方法
public static void index() {
String theman = "You are the man";
render(theman);
}
我的索引应用模板是这样的:
#{extends 'main.html' /}
#{set title:'Home' /}
The man is ${theman}
仅此而已。
当我像这样运行 apache 基准测试时:
ab -n 1 -c 1 http://localhost:9000/
我得到了不错的数字,但如果我达到 -n 10 一切都会挂起,我的计算机会在 1 个核心上达到 100% 负载并永远停留在那里。
我曾经遇到过 HEAP 错误,但我将其设置为环境变量:
export _JAVA_OPTIONS="-Xms800m -Xmx1500m"
现在我在任何地方都不再遇到任何错误。
我的同事尝试了我的应用程序,我在发送之前已对其进行了 tar 和 gzip 压缩,他可以轻松地执行 -n 10000 -c 1000 一个 dit 几乎立即运行并立即完成。
所以我的问题是,我是否必须设置任何其他系统变量,或者我需要做什么才能让我的 Play 应用在我的 Mac 上运行?
为了澄清一下,我的 mac 到今天已经完全是最新的,一切都是 99% 出厂时,可能接近 100%,除了我确实安装了 xcode 和类似的东西。
我的 java 是:
java version "1.6.0_29"
Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-11D50b)
Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02-402, mixed mode)
uname -sa
Darwin xxx.local 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~1/RELEASE_X86_64 x86_64
【问题讨论】:
-
你打算在你的 macbook 上部署应用程序吗?如果不是,为什么操作系统上的性能相关?另外,您是否尝试分析应用程序以找到瓶颈?
-
我没有尝试分析应用程序。我还没有找到任何 Mac 托管公司,我也不在寻找一家,所以不,我不会在 Mac 上部署,但我希望一切正常,我想向人们展示统计数据,以及它在负载下的处理能力。所以在我看来,这是非常简单的。我不知道要设置哪些参数和使用环境变量
-
我认为您的意思是您的四 (4) 核 i7 显示 8 cpus。
-
两件事:(1)您更改了配置,但是您是否以 prod 模式启动应用程序(即: play run --%prod )? (2) ab在Lion中有一些bug,尝试google:apr_socket_recv: Connection reset by peer (54)
-
是的,它处于生产模式。试了不止几次,但是java总是crash很厉害,每次都要杀掉java进程
标签: java macos playframework osx-lion