• 使用Nginx架设高性能流媒体服务器


    前言* 随着Nginx 大量被各互联网公司使用,常见的Nginx 用来做反向代理WEB 服务器、缓存服务器,nginx 应用很广泛,今天我们来研究一下使用Nginx架设高性能流媒体服务器 。

    一、 系统环境

    系统版本:CentOS 5.8x86_64
    Nginx版本: Nginx-1.4.2.tar.gz
    Yamdi版本:Yamdi-1.9.tar.gz

    二、 自动化安装

    Linux 采用自动化安装非常便捷,快速,而且这也每个Linux SA 必须掌握的,直接上代码,欢迎大家提更好的意见,让脚本更有实用性。

    #!/bin/sh
    #Auto Make Install Nginx FLV MP4 Server
    #系统版本:CentOS 5.8 x86_64
    #Nginx版本: Nginx-1.4.2.tar.gz
    #Yamdi版本:Yamdi-1.9.tar.gz
    #Define Path
    SRC_DIR=/usr/src
    NGX_DIR=/usr/local/nginx/
    CODE=0
    SOFT_URL=(
                                                                              
        http://nginx.org/download/nginx-1.4.2.tar.gz
                                                                              
        http://downloads.sourceforge.net/project/yamdi/yamdi/1.9/yamdi-1.9.tar.gz
                                                                              
        http://chinaapp-wordpress.stor.sinaapp.com/uploads/2013/08/player.swf
                                                                              
    )
    if
        [ $UID  -ne $CODE ];then
        echo "Must to be use Root Exec Shell ......"
        exit 0
                                                                             
    fi
    for i  in  `echo ${SOFT_URL[0]} ${SOFT_URL[1]} ${SOFT_URL[2]} `
                                                                           
        do
                                                                              
        cd  $SRC_DIR  ;wget $i
                                                                              
        if
            [ "$?" == "$CODE" ];then
                                                                              
            echo "---------The $i Soft Download Success ! "
                                                                              
        else
                                                                                
            echo "---------The $i Soft Download Success ! "
                                                                           
        fi
                                                                             
    done
    #Nginx install Include Flv Mp4
    cd  $SRC_DIR ; tar -xzf  nginx-1.4.2.tar.gz ;cd nginx-1.4.2 && ./configure  --prefix=/usr/local/nginx --with-http_gzip_static_module  --with-http_stub_status_module  --with-http_flv_module --with-http_mp4_module && make &&make install
    if
        [ "$?" == "$CODE" ];then
        echo "The Nginx  Make install Success ! "
    else
        echo "The Nginx  Make install Failed ! "
    fi
    #Install  Yamdi Tools
        cd  $SRC_DIR ; tar -xzf  yamdi-1.9.tar.gz ;cd yamdi-1.9/ &&make &&make install
    #Config Nginx Service And Flv
        cp  wugk.mp4 player.swf  /usr/local/nginx/html/
                                                                               
        /usr/local/bin/yamdi -i 51cto.mp4 -o wugk.mp4
        grep -E "(flv|mp4)" $NGX_DIR/conf/nginx.conf
        [ $?  -eq  $CODE ]&&sed -i '46c \tlocation ~ .flv$ {
    	flv;
    	}
    	location ~ .mp4$ {
    	mp4;
    	}' /usr/local/nginx/conf/nginx.conf
                                                                              
    #start Nginx service
        $NGX_DIR/sbin/nginx -t
        [ $?  -eq  $CODE ]&&/usr/local/nginx/sbin/nginx
        IP=`ifconfig eth0|grep "Bcast" |awk -F":" '{print $2}'|cut -d" " -f 1`
        echo "All Config Successful , You Can Use http://$IP/player.swf?type=http&file=wugk.mp4 to access nginx flv server !!"
        exit 1

    三、测试验证

    (1)、脚本执行效果:

    (2)、视频访问效果:

  • 相关阅读:
    如何在存储过程中临时设置数据库兼容级别
    PHP中如何防止SQL注入
    Android 源码下载
    HDU 2517 棋盘分割
    OceanBase里面的rowkey是什么概念,是由哪些要素构成的?
    JavaScript的递归之更多例子
    C++库研究笔记——生成一组随机数
    Neutron 如何支持多种 network provider
    理解 Neutron Server 分层模型
    Neutron 物理部署方案
  • 原文地址:https://www.cnblogs.com/yepanpan/p/4486896.html
Copyright © 2020-2023  润新知