资源分配方法和装置的制造方法

文档序号:9618585阅读:229来源:国知局
资源分配方法和装置的制造方法
【技术领域】
[0001] 本申请涉及计算机技术领域,具体涉及计算机资源管理技术领域,尤其涉及一种 资源分配方法和装置。
【背景技术】
[0002] 随着互联网技术的飞速发展,人们越来越多的通过网络来获取各种信息、商品和 服务。例如,一些 B2C (Business-to-Customer,商对客)或 020 (Online To Off line,线上 到线下)网站,可以直接为用户提供实体商品或线下服务,极大的方便了用户的日常生活。
[0003] 在某些情况下(例如促销时),这些网站的用户请求量会在瞬间或一定时间段内 激增。一旦请求量超出了网站服务器的负载,就会导致网站服务器瘫痪,从而无法继续为用 户提供服务。在现有技术中,虽然可以事先对用户流量进行预估,然后对服务器进行临时的 扩容。但是,在应对突发的流量激增时,仍然无法确保服务器的正常运行,从而会引起整个 服务系统的崩溃。

【发明内容】

[0004] 鉴于现有技术中的上述缺陷或不足,期望能够提供一种可以动态调整资源分配的 方案。为了实现上述一个或多个目的,本申请提供了 一种资源分配方法和装置。
[0005] 第一方面,本申请提供了一种资源分配方法,所述方法包括:确定多个业务的优先 级;获取当前负载数据;基于所述当前负载数据和所述优先级,为每个所述业务分配资源。
[0006] 第二方面,本申请提供了一种资源分配装置,所述装置包括:确定模块,用于确定 多个业务的优先级;获取模块,用于获取当前负载数据;分配模块,用于基于所述当前负载 数据和所述优先级,为每个所述业务分配资源。
[0007] 本申请提供的资源分配方法和装置,可以基于服务器所提供的多个业务的优先级 和服务器的当前负载情况,来为每个业务分配资源,从而实现了对服务器资源的动态调配。 本申请能够确保在服务器负载突增时,其核心业务的正常运行,避免了服务器系统的整体 瘫痪,极大地提高了服务器的可靠性。
【附图说明】
[0008] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它 特征、目的和优点将会变得更明显:
[0009] 图1示出了可以应用本申请实施例的示例性系统架构;
[0010] 图2示出了根据本申请提供的资源分配方法的一个实施例的流程图;
[0011] 图3示出了根据本申请提供的资源分配方法的另一个实施例的流程图;
[0012] 图4示出了根据本申请提供的资源分配装置的一个实施例的功能模块架构示意 图;以及
[0013] 图5示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统的结 构示意图。
【具体实施方式】
[0014] 下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描 述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了 便于描述,附图中仅示出了与有关发明相关的部分。
[0015] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相 互组合。下面将参考附图并结合实施例来详细说明本申请。
[0016] 图1示出了可以应用本申请实施例的示例性系统架构100。
[0017] 如图1所示,系统架构100可以包括终端设备101、102、网络103和服务器104。网 络103用以在终端设备101、102和服务器104之间提供通信链路的介质。网络103可以包 括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0018] 用户110可以使用终端设备101、102通过网络103与服务器104交互,以接收或 发送消息等。终端设备1〇1、1〇2上可以安装有各种客户端应用,例如网页浏览器、B2C/020 网站客户端、即时通信工具、邮箱客户端、社交平台软件等。
[0019] 终端设备1〇1、1〇2可以是各种电子设备,包括但不限于个人电脑、智能手机、智能 手表、平板电脑、个人数字助理等等。
[0020] 服务器104可以是提供各种服务的服务器。服务器可以对接收到的数据进行存 储、分析等处理,并将处理结果反馈给终端设备。
[0021] 需要说明的是,本申请实施例所提供的资源分配方法可以由服务器104执行。资 源分配装置可以设置于服务器104中。应该理解,图1中的终端设备、网络和服务器的数目 仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。当有大量 的终端设备101和102同时访问服务器104时,设置于服务器104中的资源分配装置可以 执行本申请实施例所提供的资源分配方法,以避免服务器104的整体瘫痪。
[0022] 请参考图2,其示出了根据本申请提供的资源分配方法的一个实施例的流程200。
[0023] 在步骤201中,确定多个业务的优先级。
[0024] 通常情况下,服务器可以同时实现多种业务功能,以满足用户的不同需求。在本实 施例中,在确定多个业务的优先级时,可以首先对服务器的功能进行分析,确定其能够实现 的所有业务功能。然后进一步根据一定的规则确定各个业务之间的优先级。具体地,可以 根据历史经验,确定不同业务对服务器所要实现的核心功能的影响程度,然后根据该影响 程度来确定各个业务的优先级。通常,业务对核心功能的影响程度越大,其优先级就越高。 例如,对于运行B2C网站的服务器来说,其核心功能是要快速完成线上交易,因此其下单业 务的优先级会较高。
[0025] 在步骤202中,获取当前负载数据。
[0026] 在本实施例中,当前负载数据可以是指当前用户向服务器所发起的请求数量。在 获取服务器的当前负载数据时,可以统计服务器在一定时间段(例如1秒)内所接收到的 用户请求数量。这样,当前负载数据就可以用服务器每秒钟所接收到的请求数量来表示。
[0027] 在步骤203中,基于当前负载数据和优先级,为每个业务分配资源。
[0028] 当在上述步骤201和步骤202中分别得到多个业务的优先级和服务器的当前负载 数据后,可以进一步基于这两个数据为每个业务分配资源。可选地,可以首先判断当前负载 数据是否大于负载阈值;若是,则基于优先级为每个业务分配资源。具体地,负载阈值可以 用于表征服务器在负载能力。由于服务器的总资源是有限的,因此其最大负载能力也是固 定的。在一种可能的实现方式中,负载阈值可以用于代表服务器的最大负载能力。
[0029] 若当前负载数据小于或等于负载阈值,说明服务器可以顺利处理当前所接收到的 所有用户请求,因此使用当前默认的资源配置方案即可,不需要对资源进行调配。若当前负 载数据大于负载阈值,说明用户请求量已经超出了服务器所能处理的范围,服务器随时都 有崩溃的可能。此时,可以对资源进行重新调配,也就是基于优先级为每个业务分配资源, 以避免服务器整体崩溃。具体地,可以增加分配给优先级高的业务的资源,同时减少分配给 优先级低的业务的资源,从而优先确保优先级高的业务仍然可以顺利完成,以保障服务器 核心功能的正常运行。
[0030] 在本实施例的一个可选实现方式中,上述资源可以包括计算资源、存储资源和传 输资源。其中,计算资源可以包括处理器(CPU)和内存等资源。存储资源可以包括硬件存 储空间和虚拟存储空间等资源。传输资源可以包括传输带宽和出入端口等资源。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1