微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何配置nginx进行长轮询(和php)

我正在创建一个简单的聊天应用.已经在Ubuntu 11.10上安装了Nginx,通过fast-cgi安装了PHP.为了感受性能,我做了一个简单的PHP文件,睡眠时间为10秒,然后报告时间.用几个浏览器实例(不同的浏览器,不同的机器)调用它,响应在大约10个实例后变得迟缓,比预期少得多(希望在数百个之前看不到任何恶化,尽管使用手动浏览器测试这是不切实际的) .

我是一个web-dev,而不是sys-admin,可能不是我的深度?不寻找最佳解决方案(搜索显示Nginx应该能够处理每个核心10k),但几百个会很棒.

还有Nginx推送流模块,但我无法弄清楚如何安装它,似乎还有另一种技术可以解决.基本开箱即用的Nginx应该能够应付我的期望,即使用PHP进行100次长期连接吗?

解决方法:

推送流模块在技术上会按照您的意愿执行操作 – 设置一个URL,您可以在其中推送更新,然后可以通过客户端代码中的pubsub进行轮询.

为了安装推送流模块,您需要获取最新的Nginx代码,获取该模块的源代码,编译该代码,然后使用新模块源代码的路径重新编译Nginx作为其中一个标志.看看我是怎么做到的,这里:

Recompiling nginx after using apt-get install nginx

如果重新启动Nginx服务器未在当前实例的列出标志中列出该模块,则在重新编译期间未正确覆盖Nginx文件.确保包含–sbin-path标志以确保覆盖正确的目录.

一旦确认它实际上已在Nginx中安装并运行,请按照@baba提供的步骤操作

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐