FluorineFx应用中“页面长时间不动”导致无法连接的解决办法

如题,在FluorineFx的实时视频交互应用中,如果页面长时间不动,可能会导致flash中的NetConnection对象断开连接,其原因我没有深入研究,不过应该能猜出大概(以下结论未必证实,不保证一定正确):FluorineFx是做为一个HttpModule而嵌入asp.net网站中的,如果长时间不动,页面与服务器之间的session过期可能会导致FluorineFx与客户端的连接也一并关闭。

解决办法:在嵌入flash的页面中,随便用ajax定时(比如每5分钟)服务端随便发点数据过去(哪怕只是一个字符也行),以证明自己还活着。



另外在使用中还发现一个现象:通常我习惯于把FluorineFx的应用站点单独以二级域名的形式放在一台独立服务器上,然后在主站点上嵌入flash来访问FluorineFx服务端,我发现如果FluorineFx的二级域名站点一直无人访问,下一次在flash中以rtmp协议连接其app时,会连接不上。但此时,如果人为在游览器里访问一下FluorineFx站点中的任何一个aspx页面或ashx时,再运行flash就能连接上了。

换言之,如果一直没有任何人以http方式请求FluorineFx站点,对默认1935端口的监听貌似会进入睡眠状态,必须要人为访问一次,方能激活。

解决办法:在嵌入flash的页面中以iframe方式随便嵌入一个FluorineFx二级站点中的任何页面即可。这样页面打开时,iframe 相当于请求了FluorineFx站点,将其激活。

作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted @ 2011-03-16 23:27  菩提树下的杨过  阅读(1313)  评论(3编辑  收藏  举报