1.一种雾节点间协作的计算迁移方法,其特征在于:包括边缘计算系统,边缘计算系统包括一个以上雾节点和边缘控制器,所述边缘计算系统与云计算中心通过通信网络互连;
雾节点接收到来自用户应用程序的一批计算任务,该批任务的数量至少为一个,触发所述雾节点的任务分配过程;
边缘控制器接收到来自一个以上雾节点的任务迁移请求,触发所述边缘控制器的协作迁移任务分配过程;
雾节点获得每个任务的分配结果后,执行任务调度过程;
所述雾节点的任务分配过程具体包括如下步骤:
步骤S101:判断该批任务的数量是否小于等于所述雾节点当前时刻的服务速率:是,则前往步骤S102;否,则前往步骤S104;
步骤S102:将该批次的任务全部设置为本地计算,前往步骤S103;
步骤S103:将所述雾节点的当前剩余服务速率报告给边缘控制器,前往步骤S106;
步骤S104:将该批任务的与所述雾节点当前服务速率相同数量的任务设置为本地计算,前往步骤S105;
步骤S105:将剩余的任务标记为迁移任务,向边缘控制器发起任务迁移请求,所述请求包括所述迁移任务的数量,前往步骤S106;
步骤S106:本任务分配过程结束;
所述边缘控制器的协作迁移任务分配过程具体包括如下步骤:
步骤S201:将接收到的雾节点的当前剩余服务速率按剩余服务速率大小降序排列,得到一个服务速率队列,所述队列头部是最大的剩余服务速率,所述队列尾部是最小的剩余服务速率;
步骤S202:将接收到的迁移请求按所请求的雾节点进行标记,一个雾节点对应一批迁移任务,将接收到的所有批次的迁移任务按各批次的迁移任务数量降序排列,得到一个请求队列,所述队列头部是迁移任务数量最大的一个批次,所述队列尾部是迁移任务数量最小的一个批次;
步骤S203:将迁移策略数组初始化为空;
步骤S204:判断请求队列头部的迁移任务数量是否小于等于服务速率队列头部的剩余服务速率:是,前往步骤S205;否,则前往步骤S206;
步骤S205:将请求队列头部的这批迁移任务出队,并将该批任务标记为迁移到服务速率队列头部的剩余服务速率所对应的雾节点处理,将标记信息放入迁移策略数组,更新剩余服务速率队,前往步骤S207;
步骤S206:将请求队列头部的这批任务中的与服务速率队列头部的服务速率大小相等的任务出队,并将出队的任务标记为迁移到服务速率队列头部的剩余服务速率所对应的雾节点处理,将标记信息放入迁移策略数组,更新剩余服务速率队,前往步骤S207;
步骤S207:判断请求队列和服务速率队列的长度是否都大于零;是,返回步骤S204;否,则前往步骤S208;
步骤S208:判断请求队列是否为空:是,则前往步骤S210;否,则前往步骤S209;
步骤S209:将请求队列中所有的任务标记为迁移到云计算中心处理,将标记信息放入迁移策略数组,并清空请求队列,前往步骤S210;
步骤S210:将迁移策略数组的信息发送给对应的雾节点,本任务分配过程结束;
所述雾节点的任务调度过程具体为:对所述雾节点接收到的该批次任务中的每一个任务,判断该任务的分配结果是否为本地计算:是,则将任务放到本地调度器进行计算处理;
否,则将任务迁移到分配结果中指定的雾节点进行计算处理;
所述步骤S101中的服务速率以任务数量为基本单位,一个单位的服务速率表示所述节点可以处理一个任务。
2.根据权利要求1所述的雾节点间协作的计算迁移方法,其特征在于,所述步骤S103中的所述雾节点的剩余服务速率是所述雾节点当前时刻的服务速率与所述批次任务的数量的差。
3.根据权利要求1所述的雾节点间协作的计算迁移方法,其特征在于,所述步骤S205中的更新剩余服务速率队列的方法具体为:将服务队列头部的剩余服务速率更新为当前的剩余服务速率减去出队的任务的数量。
4.根据权利要求1所述的雾节点间协作的计算迁移方法,其特征在于,所述步骤S206中的更新剩余服务速率队列的方法具体为:将当前服务队列头部的剩余服务速率置零并出队。