实验目的
- 本实验将引导学生对云计算任务调度算法的相关研究现状进行深入分析和研究,从影响用户任务的执行效率和系统资源的使用效率的角度出发,在现有的云计算任务调度算法的基础上,进行理论创新,从模型高效和算法高效2个层面上设计云计算任务调度模型、算法并实现。
实验思路
- 实验主要分为两大部分,虚拟服务器模拟处理任务和主服务器(主线程)模拟分发任务到各个服务器,从而实现任务调度。虚拟服务器怎么模拟处理任务,为此,我们本次实验采取虚拟服务器资源和虚拟服务器处理任务的多线程来实现任务分配。
任务调度:任务生成是通过随机数生成的任务大小和执行时间。任务大小和执行时间会影响到虚拟服务单任务执行时间和资源消耗。比如:任务过大,超出任何一台服务器的最大的执行的能力,就会出现任务过载,本次实验,在任务分配前需要检测。一旦发现,强行作废,并打印告知管理员。其二,极端任务,本次实验对极端任务的定义是:极端任务是这个任务执行需要的资源(内存)在所有的虚拟服务器仅此有一台服务器最大空闲时能满足此要求,这就是极端任务,极端任务需要特殊处理,不需要参与到一致性hash算法的分配算法中,因为此物仅此只能一台服务器处理。为此,我们在定义每台的虚拟服务器资源,定义了每台服务器都有自己的任务队列,都在初始化(new Object())产生自己的内部 独立的任务分配线程,此任务分配线程只负责处理自己内部的任务队列,一旦有新的任务&