Playframework 虚拟机上的play framework 2性能问题

Playframework 虚拟机上的play framework 2性能问题,playframework,cassandra,astyanax,phpcassa,Playframework,Cassandra,Astyanax,Phpcassa,我最近在PHP和play框架上实现了一个非常小的Cassandra web应用程序来比较这些技术。我正在一台装有ubuntu服务器的虚拟机上运行这些测试。在PHP和play框架应用程序中,只有一个URL可以插入Cassandra键空间 在PHP中,我运行了以下apache基准测试 ab-n100000-c100http://example.com/insert 测试结果表明,服务器可以每秒处理120个请求(每秒请求) 我使用Netflix的Astyanax Cassandra库在play框架中制

我最近在PHP和play框架上实现了一个非常小的Cassandra web应用程序来比较这些技术。我正在一台装有ubuntu服务器的虚拟机上运行这些测试。在PHP和play框架应用程序中,只有一个URL可以插入Cassandra键空间

在PHP中,我运行了以下apache基准测试

ab-n100000-c100http://example.com/insert
测试结果表明,服务器可以每秒处理120个请求(每秒请求)

我使用Netflix的Astyanax Cassandra库在play框架中制作了几乎相同的应用程序。然而,即使在
ab
的开始,服务器似乎也在崩溃

我正在生产中通过终端上的
play start
命令进行play框架测试


因此,我知道play框架已经准备好了。那么,我做错了什么呢?

问题在于每秒的请求数,我没有设置线程池。当时,play framework似乎消耗了太多内存,甚至线程池都是默认的

能否请您添加有关您的虚拟机的更多详细信息(它可以使用多少RAM;cassandra是否在同一虚拟机中?)。尽管我从未测量过,但我总觉得Java应用程序使用了大量内存。cassandra&play framework&apache2都在同一个vm中。它有2个核心cpu和2gb内存。因此,它比amazon ec2 micro要好。我在php中使用Thrift C扩展。区别是什么?我不熟悉那个库,但是如果问题是库而不是框架,我会接近库的邮件列表或IRC,看看他们是否遇到过。这里只是一个猜测,但是你设置了线程池吗?Play默认情况下只使用一个小线程池,如果您的应用程序正在执行阻塞操作(astyanax不是异步库afaik),这可能是它看起来如此缓慢的原因。试着看一下,非常正确,我们不得不在playframework中使用25个线程,并获得了巨大的性能提升。