本发明涉及计算机,尤其涉及一种基于物联网关算力的任务分配方法、系统、设备及介质。
背景技术:
1、在物联网行业中物联网关是一个至关重要的角色,物联网关负责在边缘侧通过各式各样的物联协议完成终端物联设备的接入,实现终端物联设备心跳、属性、事件的获取上报,并实现平台控制指令到终端设备的下发。而在面对大量物联终端设备接入时,如何充分利用算力来实现更多设备的接入就至关重要。因为物联接入需要定时获取心跳、属性、事件,但定时的间隔时间较短,通常是以秒或分钟为单位,因此定时的启动时间和间隔时间相似的时候,就会导致大量的任务在某些时刻冲突堆积,而在其他时刻又是空闲的。如果算力不够,通常是采用追加物联网关来解决,通过平台中心将终端设备任务下发到不同的物联网关,进而达到控制单个物联网关接入上线的目的。
2、同时,现有技术只能实现物联网关间的算力分配,无法实现物联网关内部设备接入任务级别的算力分配,因此也就无法提升单个物联网关的设备接入数量,进而需要投入更多的物联网关才能接入更多的终端设备。
技术实现思路
1、本发明主要解决的问题是提供一种基于物联网关算力的任务分配方法、系统、设备及介质,解决无法实现物联网关内部设备接入任务级别的算力分配,进而无法提升单个物联网关的设备接入数量,实现更多物联终端设备接入的问题。
2、为解决上述技术问题,本发明采用的一个技术方案是提供一种基于物联网关算力的任务分配方法,所述方法包括如下步骤:获取动态任务集合和新增任务信息,所述动态任务集合包括各个时间点执行的任务数,所述新增任务信息包括新增任务的任务计算资源信息、任务传输需求信息和任务存储资源信息;根据所述动态任务集合和所述新增任务信息,确定所述新增任务的任务启动时间;根据所述任务启动时间,启动所述新增任务,并更新所述动态任务集合。
3、在一些实施例中,所述获取动态任务集合,包括步骤:根据已有的定时任务信息,初始化所述动态任务集合,分配已有的定时任务并记录所述动态任务集合中的元素最大值及对应的时间点。
4、在一些实施例中,所述新增任务信息包括所述新增任务的预计启动时间、定时执行间隔时间和允许延时启动的最大延迟时间,所述根据所述动态任务集合和所述新增任务信息,确定所述新增任务的任务启动时间,包括步骤:根据所述预计启动时间和所述定时执行间隔时间,获得所述新增任务的起始落位时间点集合;根据所述起始落位时间点集合和所述最大延迟时间,获得所述新增任务的延迟落位时间点集合;对所述延迟落位时间点集合进行分析判断,确定所述新增任务的任务启动时间。
5、在一些实施例中,所述获得所述新增任务的起始落位时间点集合,包括步骤:根据所述预计启动时间,计算所述新增任务相对于起始时间的起始偏移量,所述起始偏移量为:,其中, t表示所述预计启动时间, t1表示生成所述动态任务集合的起始时间, t2表示生成所述动态任务集合的终止时间,%表示取两个数相除得到的余数;根据所述起始偏移量和所述定时执行间隔时间,计算所述新增任务在一个单位时间长度内会落位的起始落位时间点,得到新增任务的起始落位时间点集合,所述起始落位时间点集合为:,其中, i表示所述新增任务的定时执行间隔时间,表示一个数组 n的索引范围, n取索引范围内的所有整数,,,/表示取两个数相除得到的结果的整数部分。
6、在一些实施例中,所述获得所述新增任务的延迟落位时间点集合,包括步骤:利用所述起始偏移量,计算所述新增任务延迟执行的延迟偏移量,所述延迟偏移量为:,其中, n表示延迟时间,, d表示所述最大延迟时间;将所述起始落位时间点集合中的所述起始偏移量替换为所述延迟偏移量,得到所述新增任务的延迟落位时间点集合,所述延迟落位时间点集合为:。
7、在一些实施例中,所述根据所述任务启动时间,启动所述新增任务,并更新所述动态任务集合,包括步骤:
8、根据真实落位时间点集合,确定所述任务启动时间,所述真实落位时间点集合为:,其中, d表示真实延迟时间,所述真实落位时间点集合 b中包括个所述任务启动时间;在每个所述任务启动时间,启动所述新增任务,并将所述动态任务集合中对应元素的值+1,以更新所述动态任务集合。
9、在一些实施例中,所述确定所述新增任务的任务启动时间,包括步骤:若所述动态任务集合中所有元素值均达到任务阈值,则将所述动态任务集合依次增加单位集合长度,以动态扩充所述动态任务集合。
10、本发明还提供一种基于物联网关算力的任务分配系统,所述系统包括:获取模块,用于获取动态任务集合和新增任务信息,所述动态任务集合包括各个时间点执行的任务数,所述新增任务信息包括新增任务的任务计算资源信息、任务传输需求信息和任务存储资源信息;计算模块,用于根据所述动态任务集合和所述新增任务信息,确定所述新增任务的任务启动时间;执行模块,用于根据所述任务启动时间,启动所述新增任务,并更新所述动态任务集合。
11、本发明还提供一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述方法的步骤。
12、本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
13、本发明的有益效果是:本发明公开了一种基于物联网关算力的任务分配方法、系统、设备及介质,该方法包括如下步骤:获取动态任务集合和新增任务信息,动态任务集合包括各个时间点执行的任务数,新增任务信息包括新增任务的任务计算资源信息、任务传输需求信息和任务存储资源信息;根据动态任务集合和新增任务信息,确定新增任务的任务启动时间;根据任务启动时间,启动新增任务,并更新动态任务集合。本发明的任务分配方法通过在时间维度自适应分配任务,以实现物联网关算力的最大利用率,进而实现单个物联网关接入更多的物联设备。
1.一种基于物联网关算力的任务分配方法,其特征在于,所述方法包括如下步骤:
2.根据权利要求1所述的任务分配方法,其特征在于,所述获取动态任务集合,包括步骤:
3.根据权利要求1所述的任务分配方法,其特征在于,所述新增任务信息包括所述新增任务的预计启动时间、定时执行间隔时间和允许延时启动的最大延迟时间,所述根据所述动态任务集合和所述新增任务信息,确定所述新增任务的任务启动时间,包括步骤:
4.根据权利要求3所述的任务分配方法,其特征在于,所述获得所述新增任务的起始落位时间点集合,包括步骤:
5.根据权利要求4所述的任务分配方法,其特征在于,所述获得所述新增任务的延迟落位时间点集合,包括步骤:
6.根据权利要求1所述的任务分配方法,其特征在于,所述根据所述任务启动时间,启动所述新增任务,并更新所述动态任务集合,包括步骤:
7.根据权利要求1所述的任务分配方法,其特征在于,所述确定所述新增任务的任务启动时间,包括步骤:
8.一种基于物联网关算力的任务分配系统,其特征在于,所述系统包括:
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。