资讯详情

十分钟完成 ZLMediaKit Windows 服务部署:开机自启与故障恢复配置

📅 2026/9/10 19:00:40 | 华诺云谱 👁 阅读
十分钟完成 ZLMediaKit Windows 服务部署:开机自启与故障恢复配置
十分钟完成 ZLMediaKit Windows 服务部署开机自启与故障恢复配置【免费下载链接】ZLMediaKitWebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT/STUN/TURN server and client framework based on C11项目地址: https://gitcode.com/GitHub_Trending/zl/ZLMediaKit本手册指导你将 ZLMediaKit 部署为 Windows 服务实现开机自启与故障自动恢复适用于服务器无人值守运行场景。按顺序执行即可全程约十分钟。一、部署前确认执行以下清单确认环境与依赖就绪已安装 Visual Studio勾选 C 桌面开发工作负载与 CMake可在命令行执行cmake --versionWindows 下网络层依赖 wepollepoll 兼容实现随 CMake 构建自动集成无需单独安装源码获取执行git clone https://gitcode.com/GitHub_Trending/zl/ZLMediaKit构建成功后确认 conf/ 目录下config.ini的三项内容日志级别由启动参数-level控制服务模式下建议设为 info日志输出目录由-log-dir指定服务模式下必须指向可写路径否则日志丢失端口绑定以config.ini中[rtmp]的 1935、[rtsp]的 554、[http]的 80 为准确认未被本机其他程序占用。[rtmp] port1935 [rtsp] port554二、服务化落地三步第 1 步服务包装程序由于 MediaServer 本身不是服务程序需要一个薄的服务包装层。它的职责用四点概括注册服务主函数向 SCM服务控制管理器汇报服务状态安装服务控制处理器响应停止、暂停、继续指令以服务子进程方式拉起 MediaServer并传递-level、-log-dir等参数监控子进程存活子进程退出时上报失败状态交由故障恢复机制处理第 2 步注册服务与开机自启以管理员身份打开命令提示符执行注册命令sc create ZLMediaKitService binPathD:\zlm\zlmediakit_service.exe startauto :: binPath 包装程序完整路径含依赖 dll 所在目录startauto 开机自动启动参数含义binPath指向服务包装程序MediaServer 与 dll 需与其位于同一目录或已配置环境变量startauto将服务设为自动启动系统登录后无需人工干预。第 3 步故障恢复配置执行以下命令设置进程异常退出后的自动重启策略sc failure ZLMediaKitService reset86400 actionsrestart/60000/restart/60000/restart/60000 :: reset86400 失败计数 24 小时后清零restart/60000 每次重试前等待 60 秒共三次reset86400表示 24 小时无失败则重置失败计数避免长期运行后重试次数耗尽三个restart/60000依次对应第 1 至第 3 次重启动作间隔 60 秒便于依赖端口和磁盘资源先恢复。三、运维三件事权限服务默认以 LocalSystem 账户运行权限过高且不利于审计。建议创建专用本地账户如zlm_service仅授予服务目录读写与日志目录写入权限再执行sc qc ZLMediaKitService确认、必要时调整账户。日志通过-log-dir将日志固定到独立磁盘分区避免与系统日志混写利用内置日志轮转-log-slice控制文件数、-log-size控制单文件大小按天分割便于历史查询级别选择生产环境用 info排障时临时调至 debug事后改回资源为 MediaServer 进程设置内存使用上限任务管理器 → 进程 → 设置内存上限防止异常流累积撑爆内存CPU 优先级维持常规即可线程数通过-t参数按核数设置带宽密集场景可配合系统 QoS 策略限制该进程的出站带宽四、上线前检查清单sc query ZLMediaKitService返回 STATE 为 RUNNING依次探测 80、554、1935 端口连通telnet 127.0.0.1 1935等通过 HTTP-FLV 地址播放一路实际媒体流画面与声音正常事件查看器eventvwr.msc→ Windows 日志 → 系统无该服务相关的红色错误重启一次服务器确认服务随开机自动拉起手动结束 MediaServer 子进程确认 60 秒内自动重启五、排障速查现象常见原因处理方式服务创建成功但无法启动binPath路径错误、含空格未加引号用sc qc ZLMediaKitService核对 binPath重执行sc create前先用sc delete ZLMediaKitService清理服务启动后立即停止端口被占用1935/554/80执行netstat -ano查占用进程修改config.ini端口后重启服务启动报依赖缺失运行时缺少 VC 运行库或 dll 与 exe 不在同目录安装对应 Visual C 运行库将依赖 dll 与 MediaServer 放同一目录服务状态 Unknown 或 1053 超时包装程序未在规定时间内调用服务汇报检查包装程序控制台日志确认服务主函数已注册且子进程拉起逻辑未卡死配置路径错误是最常见的一类问题MediaServer 默认加载的是可执行文件同目录下的config.ini修改 conf/ 中的范例文件不会生效请以-c参数显式指定或修改目标目录中的实际文件。结尾至此注册、开机自启、故障恢复与日常运维四部分均已落地ZLMediaKit 可作为无人值守的长期服务运行。后续可持续关注官方对 Windows 服务的原生支持进展逐步减少包装层维护成本。【免费下载链接】ZLMediaKitWebRTC/RTSP/RTMP/HTTP/HLS/HTTP-FLV/WebSocket-FLV/HTTP-TS/HTTP-fMP4/WebSocket-TS/WebSocket-fMP4/GB28181/SRT/STUN/TURN server and client framework based on C11项目地址: https://gitcode.com/GitHub_Trending/zl/ZLMediaKit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。