srs推流服务器部署

参考链接

https://github.com/ossrs/srs/wiki/v1_CN_SampleRTMP

1.获取srs

git clone https://github.com/ossrs/srs

2.编译SRS
cd srs/trunk

./configure && make

3. 启动应用

./objs/srs -c conf/realtime.conf &

4.在srs/trunk目录下新建reloadSrs.sh重启脚本


#!/bin/bash

# 运行记录日志

runlog=/root/srs/trunk/reload.log

# 切换到脚本的工作目录

cd /root/srs/trunk

# 首先以正常的方式(尝试)结束掉srs服务的进程,静默结束

pgrep srs |xargs kill -15 &>/dev/null

# 休息1秒,让出1秒时间充分地停止进程

sleep 1

# 检查一下srs有没有被成功的结束,首先判断一下执行kill -15以后是否残留有srs服务的进程

processnum=$(pgrep srs |wc -l)

# 如果srs进程数量大于0,则自动让脚本采用强制进程结束的方式快速终止srs进程;

if [[ "$processnum" -gt "0" ]];then

pgrep srs |xargs kill -9 &>/dev/null

# 发送wait指令,kill -9 一旦执行完毕脚本立刻执行接下来的操作

wait

fi

# 记录停止服务的时间,时间格式的呈现:11/30/13 06:25:37

echo "$(date +"%D %T") service srs stoped" >>$runlog

# 执行你的启动命令 ,静默启动

./objs/srs -c ./conf/realtime.conf &>/dev/null

# 休息1秒,让出1秒时间充分地让srs进程启动完毕

sleep 1

# 统计启动命令执行后srs进程的数量

processnum=$(pgrep srs |wc -l)

# 如果进程的数量大于0,记录服务成功启动;

if [[ "$processnum" -gt "0" ]];then

echo "$(date +"%D %T") service srs start sucess" >>$runlog

# 否则(进程数量等于0),记录服务启动失败;

else

echo "$(date +"%D %T") service srs start fail" >>$runlog

fi

4.启动定时执行重启任务 crontab -e

30 9 * * * sh /root/srs/trunk/reloadSrs.sh &>/dev/null

你可能感兴趣的:(后端)