因为业务须要搭建了nginx rtmp服务器。 nginx
在使用的过程当中,开始一段时间还好,没发现什么问题,有问题,就重启服务器,也就行了,可是后来发现一个现象。 有时候推过一次流,第二次,由于异常断网,或者是其余缘由,就会致使没法第二次再推流。 这个现象以前也出现过。 服务器
今天大牛跟我讲解了一下,rtmp服务器的基本通信方式,首先会发一个publish的指令,告诉服务器,而后通过握手,再通过传输,将数据推到服务器上来,当客户端终止时,会发一个unpublish的指令,告诉服务器,中断推送。但是异常断网,没法将这个指令告知服务器,致使服务器上一直挂着这个链接,进而使第二次推送,让服务器认为是已存在的推送,因而拒绝了推送。 app
在他讲解的同时,我就在思考,是否有配置参数,可让服务器去清理数据呢,因而找到了大神的一篇参数详解。找到了最为关键的配置,下面我把配置详情贴出来,供你们参考一下 .net
rtmp {
server {
listen 1935;
application myapp {
live on;
drop_idle_publisher 5s;
}
}
} server
在此以前,我也试过timeout ping ping_timeout 但彷佛都没有正常生效。 如今也还不太理解,若是大神您知道的话,但愿能赐教一二。 谢谢。 blog
参数配置连接地址:http://blog.csdn.net/defonds/article/details/9274479/ io
感谢互联网,感谢使用互联网的人,更感谢互联网上使用互联网分享解决问题的办法的人。谢谢大家! 配置