我是初学实时应用程序(例如:聊天,MMORPG),但我很擅长php和ajax。 我已经使用php和ajax(间隔1000ms)编程聊天..之后,我的网站变得非常沉重,原因是服务器上的压力很大!实时和php?
我想了解有关降低服务器压力的信息。
在此先感谢
我是初学实时应用程序(例如:聊天,MMORPG),但我很擅长php和ajax。 我已经使用php和ajax(间隔1000ms)编程聊天..之后,我的网站变得非常沉重,原因是服务器上的压力很大!实时和php?
我想了解有关降低服务器压力的信息。
在此先感谢
它要求只有一分钟一次(请求不是60 /分钟,但1 /分钟)
您可能想缓存结果。设置memcached(key => value)缓存可以减少数据库负载。
当有新的请求进入时,如果您的应用程序查找的值位于缓存中,您的应用程序会询问memcache。否则,请向数据库引擎询问该值,将该值返回给用户并在下次缓存该值。
有趣的PHP库提供的工具开发者创建实时的客户端和服务器之间的双向应用过的WebSockets:比PubNub没有进一步http://socketo.me/
看!
PHP客户端库可在https://github.com/pubnub/php(包括作曲家)
和50+以上(包括JavaScript)可以在这里找到:http://www.pubnub.com/developers/
看看你是否有资格获得免费的计划:http://www.pubnub.com/free-evangelism-program/
就我所知,有几个库可用于构建非阻塞和实时应用程序,如聊天和实时游戏。
reactphp,在纯PHP中实现,就像nodejs一样,但是最近开发看起来不太活跃。
天瑞仪器,用于PHP联网图书馆用C http://github.com/SkyrayLabs/Skyray
这是我创建一个PHP库联网writen,它仍然是积极发展下。
考虑更合适的语言。 – 2011-08-18 23:44:21
我同意Dagon - 一个实时应用程序将真正惩罚一台运行PHP的服务器。我重写了一个实时PHP应用程序以使用节点。js代替,而且它每分钟都能获得1000分钟的点击率,而不会有任何戏剧性。 –
如果您对现有基础架构感到满意,您可能需要考虑将实时基础架构部分外包给[托管的实时服务](http://www.leggetter.co.uk/real-time-technologies-guide #托管服务)。 – leggetter