我试图在我的play框架服务器中有最好的优化。
我尝试通过以下方式进行优化:
%prod.jvm.memory=-server -Xms64m -Xmx128m -Xoptimize
# Jobs executor
# ~~~~~~
# Size of the Jobs pool
play.jobs.pool=2
# Execution pool
# ~~~~~
# Default to 1 thread in DEV mode or (nb processors + 1) threads in
PROD mode.
# Try to keep a low as possible. 1 thread will serialize all requests
(very useful for debugging purpose)
play.pool=5然而,我没有成功地在256MB服务器上有良好的性能。看起来http://www.playframework.org/运行在64mb的服务器上,而且运行得很好。这怎么可能呢?我是不是错过了一些优化方面的东西?
发布于 2012-02-28 23:35:41
你说的256MB服务器是什么意思?如果256MB是你的服务器的全部内存,这是不够的。
当你使用-Xmx64M时,你设置了堆大小的最大限制,但是java也需要为本机、类加载、线程提供内存。
你的操作系统也需要内存。
根据我的经验,256Mb是一个java进程的下限。
发布于 2012-02-28 23:54:18
可能有许多外部原因会影响性能:
您的应用程序中也可能存在以下问题:-您的应用程序收到太多请求,并且需要更多RAM来管理客户端-您在处理请求时在内存中创建了太多对象,占用了大部分RAM (并触发了许多GC) -与数据库的连接速度很慢,并且延迟了响应
老实说,你的应用程序可能变慢的原因有很多,很多都与你的实现或服务器有关。您需要自己监控并查看问题所在(或者向我们提供更多有关服务器性能、内存、交换、i/o、代码等方面的数据)
https://stackoverflow.com/questions/9482663
复制相似问题