Hello!
2012/8/19 Alvin Jiang wrote:
> 我正在做一个文件共享和多人群聊系统,所有聊天时发送的文件都会存在服务器上。
> 群聊时,当某个人上载一个大文件时,需要将该文件的上传进度广播到所有参与聊天的人的客户端界面上。
> 目前我准备在nginx-upload-progress-module模块上改进,每隔固定的时间(比如1秒)将当前的上传进度通过另外一个消息服务器(基于nginx_push_stream_module实现的)广播给其余的人。
> 该消息服务器和文件上传服务器并不是同一个,而且向该消息服务器发送消息必须采用POST或者websocket。
> 一旦进度消息发出,就不再关心其返回结果;或者当前一个进度消息未返回时就不再发送下一条进度消息。
> 这样我需要丢弃进度消息的响应,不把该消息的响应发送会客户端。
> 我看了您写的echo_nginx_module,但没有和我这个需求相关的东西。
> 请教,这个需求该怎么实现呢?
我的 ngx_srcache 模块中的 srcache_store 指令发起的子请求的响应是被直接忽略的,见
http://wiki.nginx.org/HttpSRCacheModule
你可以参考这个模块的实现。不过对于你的需求本身而言,我觉得或许 ngx_lua 模块更合适一些?见
http://wiki.nginx.org/HttpLuaModule
我同时抄送给了 openresty 邮件列表:https://groups.google.com/group/openresty 那里的
Nginx/OpenResty 用户和开发者或许可以给你更多的意见和建议 :)
Best regards,
-agentzh