简易RTMP流媒体服务器搭建 二

说在前面:

这篇为总结上篇的搭建步骤,并且对主机配置,nginx配置进行详细的了解~

一、Nginx安装步骤

首先确保服务器端口80、8080、1935的开放(安全组

sudo mkdir ~/build && cd ~/build
sudo yum install git gcc make pcre-devel openssl-devel
sudo git clone git://github.com/arut/nginx-rtmp-module.git
sudo wget http://nginx.org/download/nginx-1.19.1.tar.gz
sudo tar -xzf nginx-1.19.1.tar.gz
cd nginx-1.19.1
./configure --with-http_ssl_module --add-module=../nginx-rtmp-module
vi objs/Makefile

光标移动到第二行 -Werror位置,按i进入编辑模式删除 -Werror后依次esc :wq 保存并退出

sudo make
sudo make install
vi /usr/local/nginx/conf/nginx.conf

依次按下:.,d清除全部内容后按i进入编辑模式,将下面内容粘贴进文件

#user  nobody;
worker_processes  1;

error_log  logs/error.log debug;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       8080;
        server_name  localhost;

        # sample handlers
        #location /on_play {
        #    if ($arg_pageUrl ~* localhost) {
        #        return 201;
        #    }
        #    return 202;
        #}
        #location /on_publish {
        #    return 201;
        #}

        #location /vod {
        #    alias /var/myvideos;
        #}

        # rtmp stat
        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }
        location /stat.xsl {
            # you can move stat.xsl to a different location
            root /usr/build/nginx-rtmp-module;
        }

        # rtmp control
        location /control {
            rtmp_control all;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

rtmp {
    server {
        listen 1935;
        ping 30s;
        notify_method get;

        application myapp {
            live on;

            # sample play/publish handlers
            #on_play http://localhost:8080/on_play;
            #on_publish http://localhost:8080/on_publish;

            # sample recorder
            #recorder rec1 {
            #    record all;
            #    record_interval 30s;
            #    record_path /tmp;
            #    record_unique on;
            #}

            # sample HLS
            #hls on;
            #hls_path /tmp/hls;
            #hls_sync 100ms;
        }

        # Video on demand
        #application vod {
        #    play /var/Videos;
        #}

        # Video on demand over HTTP
        #application vod_http {
        #    play http://localhost:8080/vod/;
        #}
    }
}

依次按下esc :wq 保存并退出

启动nginx

sudo /usr/local/nginx/sbin/nginx

二、服务器配置的选择

第一次开了2h8g的机子完全不卡但是想到毕竟是临时使用且人不多,在推流拉流进行时top了一下发现cpu的利用率只有1%,属实有点浪费钱了,于是多开了几种配置的机器根据需求来选择配置

1.cpu、内存

这是2h2g的主机占用情况
情况在这里插入图片描述

内存占用情况再多个拉流条件下变化不大

截屏2020-08-03 上午10.28.54.png

可见实现对于硬件的要求并不高cpu选择1核也没有问题,内存就建议2g避免突发情况的卡顿

2.网络

一般来说服务器入网带宽与推流时设置的码率相同,一个1080p的视频1万的码率就满足了基本要求,只需要10m带宽即可

但但但是!真正要看的是服务器的出网宽带,因为服务器需要给每一个人分发视频,所以每多一个带宽的压力就多一倍,还是以1080p的视频为例,十个人一起观看的话至少需要100m的带宽!之前的服务器选择了固定带宽的10m只能把码率调低才可以流畅观看,如果选择按流量计费的话可以轻轻松松带宽拉满(100m)到底是选择按流量计费还是按带宽计费可以根据观看的人数和和视频大小来衡量~

三、Nginx配置详解

我们复制进nginx.conf的代码是rtmp扩展帮助中给出的标准模版,对它进行理解可以更好的优化体验

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值