`
helloyesyes
  • 浏览: 1310167 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

使用NGiNX_HTTP_Push_Module实现简单的服务器推送

阅读更多

NGINX_HTTP_Push_Module是一个Nginx服务器模块,可以实现服务器端的长连接和推送(但是推送一次后会结束进程,尚未实现持续的推送)。

http://pushmodule.slact.net可以下载该模块。

如果已安装Nginx,需要重新编译安装Nginx,要用命令"./configure --add-module=/home/hfahe/ngnix_http_push_module"来配置,然后执行make和make install来安装Nginx。

安装完成后,在Nginx配置文件的Server段里添加两个路径配置:

重启Nginx后,请求http://localhost/activity?id=10000的地址,可以看到浏览器处于请求堵塞阶段。

使用一段Perl脚本来Post数据到publish地址:

运行后,可以看到浏览器已经输出了推送的内容。

如果要完成一个大的消息系统,还需要实现持续的推送机制,另外还需要实现Nginx和后台服务器的交互(或者考虑AgentZh推的Nginx编程,呵呵)。

分享到:
评论

相关推荐

    nginx_http_push_module

    `nginx_http_push_module` 是一个针对 Nginx Web 服务器的扩展模块,它提供了Web推送(HTTP Push)功能。在传统的HTTP协议中,客户端浏览器需要不断发起请求来获取服务器更新,而Web推送技术则允许服务器主动将数据...

    推流 拉流 视频聊天 rtmp协议传输 (nginx_Gryphon服务器端)

    推流(Push Stream)是指内容生成者(如主播或视频源)将视频数据推送到服务器的过程。这个过程中,主播的设备会作为推流客户端,使用特定的推流软件或SDK,如FFmpeg或Android SDK,将录制的视频通过RTMP协议发送到...

    nginx-http-flv-module-1.2.10(包含nginx-rtmp-module)

    nginx-rtmp-module提供了接收、录制、播放以及推送到其他RTMP服务器的功能。它支持基本的RTMP操作,如连接、发布、播放、弹出数据包,还支持HLS切片和录制功能,使得Nginx能够作为一个完整的流媒体服务器运行。 3. ...

    Nginx_Rtmp_Module_Master

    2. **重定向**:可以设置 `push` 或 `pull` 将流推送到其他 RTMP 服务器,实现多服务器分发。 3. ** HLS 转码**:Nginx RTMP 模块可以配合其他工具(如 ffmpeg)实现实时转码为 HLS,以支持更多设备的播放。 总的来...

    nginx-rtmp_Http_FLV.rar

    `nginx-rtmp_Http_FLV.rar`文件包含了一个预配置好的Nginx服务器,其中集成了RTMP(Real-Time Messaging Protocol)模块和HTTP-FLV模块,使得用户可以快速搭建起一个视频流推送和播放的平台。 **Nginx服务器** ...

    海康威视摄像头RTSP使用nginx推流到服务器直播教程

    在本文中,我们将深入探讨如何使用海康威视摄像头通过RTSP协议,结合nginx服务器实现视频直播。RTSP(Real-Time Streaming Protocol)是一种用于控制实时流传输的应用层协议,而海康威视作为知名的安防设备供应商,...

    nginx-rtmp模块源码包nginx-rtmp-module-master

    这段配置创建了一个名为 "live" 的应用,允许所有 IP 地址发布流,并将接收到的流推送到 "backup-server" 上的同一应用。 **六、运维要点** 1. **日志监控**:配置 Nginx 日志,以便追踪错误和性能问题。 2. **安全...

    nginx-rtmp-module

    Nginx-RTMP-Module 是由 Lavf57 开发的一个开源项目,其核心功能是添加对 RTMP 协议的支持,使得 Nginx 可以作为 RTMP 服务器接收来自编码器的音视频流,同时也可以将这些流推送到其他 RTMP 服务器或直接分发给...

    升级nginx支持HTTP/2服务端推送的方法

    - [Nginx HTTP/2模块文档 - `http2_push_preload`指令](http://nginx.org/en/docs/http/ngx_http_v2_module.html#http2_push_preload) - [MDN Web Docs:HTML元素 - link]...

    nginx rtmp转发服务器

    - **推流**:发布者使用支持RTMP的软件(如OBS Studio)将内容推送到Nginx RTMP服务器。 - **拉流**:观众可以使用支持RTMP的播放器或网页播放器从服务器拉取流。 - **录制**:通过`record`指令,Nginx RTMP可以...

    nginx-push-stream-module:用于您的Nginx设置的纯流http推送技术。 彗星变得简单且真正可扩展

    用于您的Nginx设置的纯流http推送技术。 变得简单,真正可扩展。 支持 , ,Long Polling和Forever Iframe。 看下面的。 该模块不随Nginx源一起分发。 请参阅。 在github上的上可用 变更日志 始终查看以了解新...

    nginx推流的配置

    开发者可以通过JavaCV将本地视频流推送到Nginx的RTMP服务器。以下是一个简单的JavaCV推流示例: ```java import org.bytedeco.javacpp.Loader; import org.bytedeco.javacv.FFmpegFrameGrabber; import org....

    nginx流媒体配置说明.rar_nginx

    - `tcp_nodelay`和`tcp_nopush`:根据需要调整以优化TCP推送策略。 - `gzip`:开启GZIP压缩,减少网络传输的数据量。 - `proxy_cache`:如果作为反向代理,可以启用缓存机制,减少对后端服务器的压力。 6. 监控...

    nginx1.7.11.3与nginx-rtmp-module-master整合

    `指令记录所有推送到服务器的流,以便后续点播。 3. 限制访问:可以通过设置防火墙规则或在Nginx配置中指定允许推流和播放的IP地址,以增强安全性。 通过以上步骤,你就成功地整合了Nginx 1.7.11.3与Nginx-RTMP-...

    nginx-http-flv-module2-1.19.3(windows-支持flv.js)

    推流者可以将 RTMP 流推送到 `rtmp://your_rtmp_server/live/stream_key`,而用户则可以通过 `http://your_http_server/hls/stream_key.m3u8` 或 `http://your_http_server/flvjs/player.html?url=stream_key.flv` ...

    nginx搭建rtmp协议流媒体服务器

    例如,使用FFmpeg推送一个本地视频流到Nginx: ```bash ffmpeg -i input.mp4 -c copy -f flv rtmp://localhost/live/my-stream ``` 这里,`live`是之前配置中的应用程序名,`my-stream`是自定义的流名称。 **观看...

    nginx1.14.0压缩包

    3. **HTTP/2 Server Push**: 实现了HTTP/2 Server Push功能,允许服务器主动推送资源给客户端,减少额外的请求。 4. **模块更新**: 包括对ngx_http_realip_module(用于识别客户端真实IP)、ngx_...

    Nginx与Tomcat集群配置 Redis配置

    - **nginx_http_push_module**:这是一个用于支持HTTP长连接和推送的模块,适用于实时应用。 - **zlib**:提供gzip压缩功能,有助于减小传输的数据量。 - **openssl**:用于支持HTTPS加密连接。 - **pcre**:...

Global site tag (gtag.js) - Google Analytics