在新版本中增加的另外一个新特性就是延迟关机。引入延迟关机的目的有两个,第一是改善用户的播放体验,第二是更好的收集在关机同时服务器上连接用户的数据统计。在以往的服务器中,服务器一旦开始关机操作,所有的播放器和编码器将会瞬间断开所有到服务器的链接并报错。而服务器也将不做任何后续操作而马上进入重新启动。在新版本中改进了这方面的设置。
在这里有两个参数,一个是Player Disconnect Interval 播放器断开间隔,当其用这个设置后,播放器将在指定时间后断开连接。这里的断开连接是正常的断开连接,就像影片播放终止一样的状态。等于服务器自己完成了最后部分数据的封包操作,用户认为是影片播放到了终点。
还有一个参数就是Shutdown Proceed Time 关机处理时间,这个时间段处于刚才的时间段之后,其实这段时间才是真正关闭播放器连接的过程。在这个时间段内,服务器负责收集所有播放器断开连接的信息。默认一般设置为30秒,但是如果你的服务器平均打开文件在1000个以上,你需要设置更长的时间。
最后一个注意的参数是Allow New Client Connections During Shutdown 是否在允许过程中继续允许新的客户端接入。下面我来具体写一个关机过程,大家就能比较清楚的了解到整个延迟关机的过程了。
首先发送关机信息,然后所有的连接都会受到这个信息,在这里我们设置断开间隔为30秒,那么这个时候,所有的连接用户都将会被在30秒之后断开。但是有一种情况,就是如果设置断开间隔为300秒,而如果没有打开允许新客户接入,那么一旦在关机过程中断开,用户将无法再连接到服务器上。而如果打开新用户接入,那么用户就可以再度接入,一直到服务器关机为止。 在播放器断开间隔时间结束以后,进入到关机处理时间,这时候才开始断开所有的激活的媒体连接。无论发生什么情况,在这个时间结束以后,才是真正关闭服务器或者进入重新启动过程。
其他的几个提示:
1. 这个特性适用的播放器为RealPlayer, QuickTime Player, Windows Media Player。
2. 在Linux和Solaris中,延迟关机仅仅在用killall 或 pkill 命令的时候有效,如果用 kill -9 将会马上关闭服务器,而不进入延迟关机操作流程。
3. 在Windows中,只有用Ctrl+c 或者在服务管理器中终止服务的时候才会有效,而如果在任务管理器中直接关闭rmserver.exe 是不会调用延迟关机流程的。
4. 在延迟关机过程中,服务器并不向编码器发送通报信息。
以上就是有关延迟关机的有关内容