xPage视频播放器跨服务器播放2-3分钟后停止运行求助
先把你的代码和环境信息整理出来方便参考:
视频播放器代码:
<video class="videoContainer" controls="controls" id="callVideo" preload="none"> <source src="./xxxxxxxxxxxx/$file/myVideo.mp4" type="video/mp4"> </source> </video>
- 视频格式:mp4
- 视频时长:~55分钟
- 文件大小:~50Mb
遇到这种一台服务器正常、另一台播放2-3分钟就中断的情况,基本可以排除视频文件本身的问题,核心差异肯定在两台Domino服务器的配置或者运行环境上,下面是几个最值得排查的方向:
Domino HTTP响应超时设置过短
另一台服务器可能把HTTP请求的超时时间设得太短,当视频流传输到2-3分钟时,服务器就主动中断了连接。你可以打开这台服务器的服务器配置文档,找到「HTTP」选项卡下的「超时」相关参数(比如HTTPTimeout或者「客户端连接超时」),默认值可能只有几分钟,建议调整到3600秒(1小时)左右,匹配你的视频时长。未开启HTTP附件流式传输
Domino默认可能没开启附件的流式传输功能,如果没开,服务器会尝试一次性把整个50MB的视频文件加载到内存再发送,不仅占内存,还容易触发超时。检查服务器文档的「HTTP」选项,找到**AllowHTTPAttachmentStreaming**这个配置项,确保它被勾选上。开启后服务器会分段发送视频数据,避免一次性加载的压力。服务器资源瓶颈
另一台服务器的CPU、内存或者网络带宽可能不够用:播放视频时服务器需要持续处理数据流,如果CPU占用过高、内存不足,或者网络带宽被其他服务占满,都可能导致视频流中途中断。你可以查看服务器的性能监控日志,比如Domino的控制台日志、操作系统的资源使用情况,看看是不是在播放中断的时间点出现了资源耗尽的情况。前端代理/防火墙的连接限制
如果这台服务器前面部署了防火墙、反向代理(比如NGINX、IBM HTTP Server),这些中间件可能设置了单个请求的时长或数据量限制,超过阈值就会切断连接。检查这些代理的配置,比如超时时间、最大请求大小的设置,确保它们能容纳55分钟的视频流传输。xPage页面的缓存或代理设置
检查xPage的相关配置,比如页面是否设置了过短的缓存过期时间,或者是否有后台代理的超时限制。另外,虽然你设置了preload="none",但服务器端的xPage渲染或者资源处理逻辑可能在两台服务器上有差异,可以尝试简化页面代码,只保留视频播放器部分测试,排除其他页面元素的干扰。
内容的提问来源于stack exchange,提问作者John Glabb

