我有一个当前运行的PHP应用程序,我想添加实时源(谷歌搜索最新结果源),我有一个PHP实现,执行以下操作:
>对服务器的AJAX请求.
> PHP响应.
>使用setTimeout()15000ms(15秒)后,我们重复这些步骤.
我知道这在服务器上有很多开销,会导致C10K问题.
经过研究,我发现PHP作为Apache2模块无法实现Comet解决方案,这是不幸的!
我有两个选择,使用Scala,或使用Python来实现我的网站的这一部分,因为它已经完成,没有时间重写它.
因为我从ServerGrove使用VPS200,所以我不关心任何事情因为我关心性能.我将与PHP并行安装JVM或Python.
那么你认为在这种情况下使用Scala或Python的JVM会减少内存/ cpu消耗?
提前致谢
更新:
我想我会用Akka Project,我要测试一下.
更新2:
我使用Node.js完成了它,它在学习曲线,社区支持和项目成熟度方面的任何其他解决方案(IMO)都无法比拟.我对Scala有一段不幸的经历,因为我在尝试Node.js之前给了Scala一个很长的机会.
解决方法:
为什么不node.js?它具有完美处理COMET的解决方案的良好声誉.每个人都知道Plurk success story–亚洲最受欢迎的社交网站之一,拥有5亿用户,其中多达20万用户并行工作(使用COMET长轮询连接).与solutions based on java app server suitable for COMET (Jetty/Netty)相比,node.js内存使用方式更好(约10倍).
如果你最终想要使用Java / Scala,首先应该看一下Atmosphere框架.它拥有最丰富的功能集(支持各种COMET策略web-socket servlet 3.0); out-of-the-box REST-support, based on Jersey(JAX-RS规范的实施); integration with Akka(非常强大的演员实现,容错,STM,远程控制等).
选择一个Lift,你可能必须完全重写你的应用程序,尽管它有一个非常好的COMET支持.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。