视频转码是一项非常耗费cpu的工作,如果大量视频上传,单台服务器的能力实在有限,这时候就需要部署多台服务器来转码,为了简单方便的实现这一功能,下面介绍一种简单办法,让用户在上传视频的时候,随机分散上传到部署的各个服务器,实现简单的集群分布处理。

比如:

现在有a b  c三台服务器,为了减轻一台服务器转码的压力,在上传的时候需要把用户上传的视频随机分配到三台不同的服务器转码,这时候只需在上传页面稍作控制就可以实现上传的视频文件随机分配到不同的服务器。

修改方法:

首先查看你在上传页面使用的哪个js文件在控制上传,一般都是adminup.js  upload.js等这种文件名的js文件。打开之后在js内容末尾添加内容

我们以upload.js为例, 在底部增加

function RandomNum(Min, Max) {

var Range = Max - Min;

var Rand = Math.random();

var num = Min + Math.floor(Rand * Range);

return num;

}

然后在调用上传的页面修改,把原来的这部分代码:

<script language="javascript">

//上传地址

var hostname = window.location.hostname

var port = window.location.port || '80';

var ServerUrl = "http://" + hostname + ":" + port + "/uploads";

if(port == 80){

ServerUrl = "http://" + hostname + "/uploads";

}

</script>

改为:

<script language="javascript">

//上传地址

var hostname = window.location.hostname

var port = window.location.port || '80';

var ServerUrl = "http://a服务器ip:2000/uploads##http://b服务器ip:2000/uploads##http://c服务器ip:2000/uploads";//如果有多个服务器则对照设置,每个地址之间用##分隔,如果你的端口不是2000则改为其他端口

var array=ServerUrl.split("##");

var num=array.length;

var sjnum=RandomNum(0,num);

ServerUrl=array[sjnum];

</script>

通过上面的js即可实现简单的上传随机分配到各个服务器,无需用户选择,如果你需要用户选择上传服务器,修改js内容即可实现。

如果需要把多个服务器的内容,同步到一个大的存储系统,请参考以下文档:https://www.ppvod.cc/496.html

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。