一种更新应用程序的方法及装置技术领域
本发明涉及计算机网络技术领域,具体而言,涉及一种更新应用
程序的方法及装置。
背景技术
随着互联网产品迭代速度加快,更新应用程序和组件更是常见,
对于产品数量级大的情况,如果发布更新没有控制比例会导致服务
器带宽满载,服务停止,控制比例如果预估不准也会导致相同问题。
例如:通常早高峰和晚高峰请求量是平时的3倍左右,带宽满载服
务器会返回错误,造成服务不可用,正在更新的用户也会中断,可
能会造成雪崩,导致所有用户更新失败。
现有技术通过控制整体比例或临时增加带宽的方式来更新应用
程序,以保证服务的可用。但是,根据带宽情况放量的方式,对于
有些不满载的服务器机房,整体限制后会有浪费,如果满载后临时
增加带宽,由于临时带宽费用比固定带宽费用要高,又会造成不必
要浪费。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者
至少部分地解决或者减缓上述问题的更新应用程序的方法及装置,
实现了更新比例的自动调整,在不增加带宽的情况下保证服务可用
性。
根据本发明的一个方面,提供了一种更新应用程序的方法,包括:
响应于终端触发的应用程序更新指令,监测更新所用带宽的使
用状态,以获取所述带宽的实时占用量;
根据所述带宽的实时占用量和预设的带宽阈值调整进行应用程
序更新的终端比例,以实现应用程序的更新。
可选地,所述根据所述带宽的实时占用量和预设的带宽阈值调
整进行应用程序更新的终端比例,具体包括:
将所述带宽的实时占用量与所述预设的带宽阈值进行比较;
若所述带宽的实时占用量大于或等于所述预设的带宽阈值,则
将当前应用程序更新的终端比例降低第一预设比例;
若所述带宽的实时占用量小于所述预设的带宽阈值,则将当前
应用程序更新的终端比例增加第二预设比例。
可选地,所述第一预设比例大于所述第二预设比例,且所述第
一预设比例和所述第二预设比例均大于0。
可选地,在所述根据所述带宽的实时占用量和预设的带宽阈值
调整进行应用程序更新的终端比例之前,所述方法还包括:
根据历史更新记录,确定预设时间周期;
相应地,所述根据所述带宽的实时占用量和预设的带宽阈值调
整进行应用程序更新的终端比例,具体包括:
根据所述带宽的实时占用量和预设的带宽阈值,按照预设时间
周期周期性调整应用程序更新的终端比例。
可选地,在所述根据所述带宽的实时占用量和预设的带宽阈值
调整进行应用程序更新的终端比例之后,所述方法还包括:
为每一触发应用程序更新指令的终端生成一随机数,将满足预
设条件的随机数对应的终端确定为当前进行应用程序更新的终端。
可选地,在所述根据所述带宽的实时占用量和预设的带宽阈值
调整进行应用程序更新的终端比例之后,所述方法还包括:
向每一触发应用程序更新指令的终端发送随机数生成指令,以
使各终端生成对应的随机数;
将满足预设条件的随机数对应的终端确定为当前进行应用程序
更新的终端。
可选地,所述方法还包括:
向当前没有进行应用程序更新的终端发送下一次请求更新的时
间。
可选地,在所述响应于终端触发的应用程序更新指令,监测更
新所用带宽的使用状态,以获取所述带宽的实时占用量之前,所述
方法还包括:
根据历史更新记录,确定更新所用带宽。
可选地,在所述根据所述带宽的实时占用量和预设的带宽阈值
调整进行应用程序更新的终端比例之前,所述方法还包括:
根据历史更新记录,确定所述预设的带宽阈值。
根据本发明的另一个方面,提供了一种更新应用程序的方法,
包括:
发送应用程序更新指令,所述应用程序更新指令包含终端进行
应用程序更新所需文件列表;
接收服务端根据所述应用程序更新所需文件列表返回的更新响
应信息;
若所述更新响应信息指示不允许所述终端进行本次更新,则从
所述更新失败响应信息中获取下一次请求更新的时间。
可选地,所述方法还包括:
若所述更新响应信息指示允许所述终端进行本次更新,则执行
所述应用程序的更新。
根据本发明的另一个方面,提供了一种更新应用程序的方法,
包括:
发送应用程序更新指令,以使服务端根据所述应用程序更新指
令发送随机数生成指令;
接收所述服务端发送的随机数生成指令,生成对应的随机数;
若生成的随机数不满足所述预设条件,则向所述服务端获取下
一次请求更新的时间;
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
可选地,所述方法还包括:
若生成的随机数满足所述预设条件,则向服务端发送更新确认
消息,进行应用程序更新。
根据本发明的另一个方面,提供了一种更新应用程序的装置,
包括:
监测单元,适于响应于终端触发的应用程序更新指令,监测更
新所用带宽的使用状态,以获取所述带宽的实时占用量;
调整单元,适于根据所述监测单元得到的带宽的实时占用量和
预设的带宽阈值调整进行应用程序更新的终端比例,以实现应用程
序的更新。
可选地,所述调整单元,具体适于将所述带宽的实时占用量与
所述预设的带宽阈值进行比较,若所述带宽的实时占用量大于或等
于所述预设的带宽阈值,则将当前应用程序更新的终端比例降低第
一预设比例,若所述带宽的实时占用量小于所述预设的带宽阈值,
则将当前应用程序更新的终端比例增加第二预设比例。
可选地,所述第一预设比例大于所述第二预设比例,且所述第
一预设比例和所述第二预设比例均大于0。
可选地,所述装置还包括:
第一确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之前,根据历史更新
记录,确定预设时间周期;
相应地,所述调整单元,具体适于根据所述带宽的实时占用量
和预设的带宽阈值,按照预设时间周期周期性调整应用程序更新的
终端比例。
可选地,所述装置还包括:
第二确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之后,为每一触发应
用程序更新指令的终端生成一随机数,将满足预设条件的随机数对
应的终端确定为当前进行应用程序更新的终端。
可选地,所述装置还包括:
第三确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之后,向每一触发应
用程序更新指令的终端发送随机数生成指令,以使各终端生成对应
的随机数,将满足预设条件的随机数对应的终端确定为当前进行应
用程序更新的终端。
可选地,所述装置还包括:
发送单元,适于向当前没有进行应用程序更新的终端发送下一
次请求更新的时间。
可选地,所述装置还包括:
第四确定单元,适于在所述响应于终端触发的应用程序更新指
令,监测更新所用带宽的使用状态,以获取所述带宽的实时占用量
之前,根据历史更新记录,确定更新所用带宽。
可选地,所述装置还包括:
第五确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之前,根据历史更新
记录,确定所述预设的带宽阈值。
根据本发明的另一个方面,提供了一种更新应用程序的装置,
包括:
发送单元,适于发送应用程序更新指令,所述应用程序更新指
令包含终端进行应用程序更新所需文件列表;
接收单元,适于接收服务端根据所述应用程序更新所需文件列
表返回的更新响应信息;
获取单元,适于当所述接收单元接收的更新响应信息指示不允
许所述终端进行本次更新时,从所述更新失败响应信息中获取下一
次请求更新的时间。
可选地,所述装置还包括:
更新单元,适于当所述接收单元接收的更新响应信息指示允许
所述终端进行本次更新时,执行所述应用程序的更新。
根据本发明的另一个方面,提供了一种更新应用程序的装置,
包括:
发送单元,适于发送应用程序更新指令,以使服务端根据所述
应用程序更新指令发送随机数生成指令;
生成单元,适于接收所述服务端发送的随机数生成指令,生成
对应的随机数;
获取单元,适于当所述生成单元生成的随机数不满足所述预设
条件时,向所述服务端获取下一次请求更新的时间;
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
可选地,所述装置还包括:
更新单元,适于当所述生成单元生成的随机数满足所述预设条
件时,向服务端发送更新确认消息,进行应用程序更新。
本发明的有益效果为:
本发明提供的更新应用程序的方法及装置,通过响应于终端触发
的应用程序更新指令,监测更新所用带宽的使用状态,以获取所述带
宽的实时占用量,并根据所述带宽的实时占用量和预设的带宽阈值调
整进行应用程序更新的终端比例,以完成应用程序的更新。本发明实
现了应用程序更新过程中更新比例的自动调整,在不增加带宽的情况
下保证服务可用性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发
明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明
的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的
具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处
对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施
方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用
相同的参考符号表示相同的部件。在附图中:
图1示意性示出了本发明一个实施例的更新应用程序的方法流程
示意图;
图2示意性示出了本发明另一实施例的更新应用程序的方法流程
示意图;
图3示意性示出了本发明另一实施例的更新应用程序的方法流程
示意图;
图4示意性示出了本发明另一实施例的更新应用程序的方法流程
示意图;
图5示意性示出了本发明另一实施例的更新应用程序的方法流程
示意图;
图6示意性示出了本发明一个实施例的更新应用程序的装置的结
构示意图;
图7示意性示出了本发明一个实施例的更新应用程序的装置的结
构示意图
图8示意性示出了本发明一个实施例的更新应用程序的装置的结
构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示
出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相
同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,
仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数
形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理
解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整
数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或
多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有
术语(包括技术术语和科学术语),具有与本发明所属领域中的普通
技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中
定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一
致的意义,并且除非被特定定义,否则不会用理想化或过于正式的含
义来解释。
图1示意性示出了本发明一个实施例的更新应用程序的方法流程
示意图。
参照图1,本发明实施例的更新应用程序的方法具体包括以下步
骤:
S11、响应于终端触发的应用程序更新指令,监测更新所用带宽
的使用状态,以获取所述带宽的实时占用量。其中,所述更新所用
带宽的使用状态至少包括带宽当前的实时占用量。
需要说明的是,本实施方式的方法的执行主体为服务端。本实
施例中的终端为计算机、手机、平板电脑、掌上电脑PDA或笔记本
等设备,当然,还可为其他具有测速功能的设备,本发明对此不加
以限制。
需要说明的是,本实施例中的应用程序包括浏览器应用程序、
杀毒应用程序、聊天应用程序以及其他需要进行更新的应用程序,
本发明对此不加以限制。本实施例中的应用程序更新,包括应用程
序的版本升级以及应用程序的文件更新,其中,应用程序的版本升
级,如,360浏览器从7.0升到8.0等;应用程序的文件更新,如,
查毒应用的病毒文件库的更新。
可理解的是,所述终端触发的应用程序更新指令可理解为终端触
发的应用程序更新启动指令。本实施例中的应用程序更新指令对应的
更新下载都受限于同一带宽(即更新所用带宽),应用程序更新指令
对应的类似下载文件都是经过同一带宽实现。
在具体实现中,所述应用程序更新指令可通过多种方式触发,例
如:开机触发,或,预设时间自动触发等。本发明不需要对具体根据
怎样的模式实现应用程序更新指令的触发进行限定,本领域技术人员
需要根据实际应用进行设置。
S12、根据所述带宽的实时占用量和预设的带宽阈值调整进行应
用程序更新的终端比例,以实现应用程序的更新。
本实施例中,带宽阈值为预设设置的。具体的,可根据实际更
新情况或历史更新数据进行设置。
在具体应用中,服务端通过根据更新所用带宽的实时占用量和
预设设置的带宽阈值调整进行应用程序更新的终端比例,以实现应
用程序的更新。
本发明实施例提供的更新应用程序的方法,通过响应于终端触发
的应用程序更新指令,监测更新所用带宽的使用状态,以获取所述带
宽的实时占用量,并根据所述带宽的实时占用量和预设的带宽阈值调
整进行应用程序更新的终端比例,以完成应用程序的更新。本发明实
现了应用程序更新过程中更新比例的自动调整,在不增加带宽的情况
下保证服务可用性。
根据本发明的一个可选实施例,所述根据所述带宽的实时占用
量和预设的带宽阈值调整进行应用程序更新的终端比例,具体包括
以下步骤:将所述带宽的实时占用量与所述预设的带宽阈值进行比
较;若所述带宽的实时占用量大于或等于所述预设的带宽阈值,则
将当前应用程序更新的终端比例降低第一预设比例;若所述带宽的
实时占用量小于所述预设的带宽阈值,则将当前应用程序更新的终
端比例增加第二预设比例。
在具体应用中,服务端通过将监测到的更新所用带宽的实时占
用量与预设的带宽阈值进行比较,当更新所用带宽的实时占用量大
于或等于预设的带宽阈值时,将当前应用程序更新的终端比例降低
第一预设比例,当更新所用带宽的实时占用量小于所述预设的带宽
阈值,将当前应用程序更新的终端比例增加第二预设比例,进而实
现了应用程序更新过程中更新比例的自动调整,在不增加带宽的情
况下保证服务可用性。
在一个具体示例中,由于通常早高峰和晚高峰时间段应用程序
更新请求量是平时的3倍左右,更新所用带宽满载时,服务器会返
回错误,造成服务不可用,进而使得正在升级的用户出现中断,甚
至会造成雪崩等情况,导致所有用户升级失败。为解决这一问题,
本实施例中,每一服务端读取本地网卡流量,监测更新所用带宽的
使用状态,以获取所述带宽的实时占用量,如果实时占用量超过或
等于带宽阈值则将当前应用程序更新的终端比例降低第一预设比
例,如果小于带宽阈值则将当前应用程序更新的终端比例增加第二
预设比例。
其中,带宽阈值可设定为总带宽的80-90%左右,此数据为理论
值,在具体应用中,可根据产品升级大小和数量进行调整。第一预设
比例和第二预设比例的取值,可设定为10%或5%,本领域技术人员
可根据实际更新状态进行设置,本发明对此不做具体限定。
根据本发明的一个优选实施例,所述第一预设比例大于所述第
二预设比例,且所述第一预设比例和所述第二预设比例均大于0。
本实施例中,进一步限定了第一预设比例和第二预设比例的取
值,通过设定第一预设比例大于所述第二预设比例,且所述第一预
设比例和所述第二预设比例均大于0,采用速减慢增的策略,速减:
由于高峰期带宽容易突增,速减可以快速缓解压力。慢增:防止增
加过快带宽满载,进一步优化了应用程序更新过程中更新比例的自
动调整,以确保服务可用性。
在一个具体示例中,第一预设比例取值为10%,第二预设比例
取值为2%,当更新所用带宽的实时占用量超过带宽阈值则降低升级
比例10%,如果小于阈值则上升2%比例。
根据本发明的一个优选实施例,在所述根据所述带宽的实时占
用量和预设的带宽阈值调整进行应用程序更新的终端比例之前,所
述方法还包括:根据历史更新记录,确定预设时间周期。
本发明实施例,通过对当日的更新次数和终端的更新成功率进
行统计和运营,并根据统计数据更新历史更新记录,并根据历史更
新记录,确定预设时间周期,以有避免频繁的比例调整,带来的资
源消耗和系统压力,或,由比例调整不及时,带来的更新效率低或
带宽满载。进一步优化了应用程序更新过程中更新比例的自动调整,
以确保服务可用性。
进一步地,所述根据所述带宽的实时占用量和预设的带宽阈值
调整进行应用程序更新的终端比例,具体包括:根据所述带宽的实
时占用量和预设的带宽阈值,按照预设时间周期周期性调整应用程
序更新的终端比例。
本发明实施例,按照预设时间周期周期性调整应用程序更新的
终端比例,可以即使实现应用程序更新的终端比例的调整,进一步
优化了应用程序更新过程中更新比例的自动调整,以确保服务可用
性。
图2示意性示出了本发明一个实施例的更新应用程序的方法流程
示意图。
参照图2,本发明实施例的更新应用程序的方法具体包括以下步
骤:
S21、响应于终端触发的应用程序更新指令,监测更新所用带宽
的使用状态,以获取所述带宽的实时占用量。其中,所述更新所用
带宽的使用状态至少包括带宽当前的实时占用量。
S22、根据所述带宽的实时占用量和预设的带宽阈值调整进行应
用程序更新的终端比例,以实现应用程序的更新。
上述的步骤S21和步骤S22与图1所示方法的步骤S11和
步骤S12相同,在此不再赘述。
S23、为每一触发应用程序更新指令的终端生成一随机数,将满
足预设条件的随机数对应的终端确定为当前进行应用程序更新的终
端。
在一个具体示例中,服务器为每一触发应用程序更新指令的终
端生成一随机数(0-100),将满足预设条件的随机数对应的终端,
如生成的随机数小于60的终端,确定为当前进行应用程序更新的终
端,不满足预设条件的随机数对应的终端,如生成的随机数小于60
的终端,则按照约定时间再次请求升级。
本发明实施例,服务端在根据所述带宽的实时占用量和预设的
带宽阈值调整进行应用程序更新的终端比例之后,进一步为每一触
发应用程序更新指令的终端生成一随机数,将满足预设条件的随机
数对应的终端确定为当前进行应用程序更新的终端,进而实现当前
进行应用程序更新的终端的确定。
本实施例,通过由服务端生成随机数的方式实现当前进行应用
程序更新的终端的确定,便于服务端对终端的更新信息管理。
图3示意性示出了本发明一个实施例的更新应用程序的方法流程
示意图。
参照图3,本发明实施例的更新应用程序的方法具体包括以下步
骤:
S31、响应于终端触发的应用程序更新指令,监测更新所用带宽
的使用状态,以获取所述带宽的实时占用量。其中,所述更新所用
带宽的使用状态至少包括带宽当前的实时占用量。
S32、根据所述带宽的实时占用量和预设的带宽阈值调整进行应
用程序更新的终端比例,以实现应用程序的更新。
上述的步骤S31和步骤S32与图1所示方法的步骤S11和
步骤S12相同,在此不再赘述。
S33、向每一触发应用程序更新指令的终端发送随机数生成指
令,以使各终端生成对应的随机数。
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
S34、将满足预设条件的随机数对应的终端确定为当前进行应用
程序更新的终端。
在一个具体示例中,服务器向每一触发应用程序更新指令的终
端发送随机数生成指令,以使各终端生成对应的随机数(0-100),
将满足预设条件的随机数对应的终端,如生成的随机数小于60的终
端,确定为当前进行应用程序更新的终端,不满足预设条件的随机
数对应的终端,如生成的随机数小于60的终端,则按照约定时间再
次请求升级。
本发明实施例,在根据所述带宽的实时占用量和预设的带宽阈
值调整进行应用程序更新的终端比例之后,进一步向每一触发应用
程序更新指令的终端发送随机数生成指令,以使各终端生成对应的
随机数,并在随机数生成指令规定了各终端生成的随机数的数值范
围,以及满足所述预设条件的随机数在所述数值范围内的一特定范
围中,将满足预设条件的随机数对应的终端确定为当前进行应用程
序更新的终端,进而实现当前进行应用程序更新的终端的确定。
本实施例,服务端向每一触发应用程序更新指令的终端发送随
机数生成指令,通过由各终端生成对应的随机数的方式实现当前进
行应用程序更新的终端的确定,减小了对服务端资源的消耗,可以
有效地提高随机数的计算速度,快速实现当前进行应用程序更新的
终端的确定,进而提高终端应用程序更新的速度。
根据本发明的一个优选实施例,本发明实施例提供的更新应用
程序的方法还包括步骤:向当前没有进行应用程序更新的终端发送
下一次请求更新的时间。
本发明实施例,在根据所述带宽的实时占用量和预设的带宽阈
值调整进行应用程序更新的终端比例,并确定出当前进行应用程序
更新的终端之后,进一步通过向当前没有进行应用程序更新的终端
发送下一次请求更新的时间,以使终端按照约定时间再次请求更新,
从而保证了所有终端均能够顺利实现应用程序的更新。
根据本发明的一个可选实施例,在所述响应于终端触发的应用
程序更新指令,监测更新所用带宽的使用状态,以获取所述带宽的
实时占用量之前,所述方法还包括:根据历史更新记录,确定更新
所用带宽。
本发明实施例,通过对当日的更新次数和终端的更新成功率进
行统计和运营,并根据统计数据更新历史更新记录。进而在响应于
终端触发的应用程序更新指令,监测更新所用带宽的使用状态,以
获取所述带宽的实时占用量之前,根据历史更新记录,确定更新所
用带宽。
根据本发明的一个可选实施例,在所述根据所述带宽的实时占
用量和预设的带宽阈值调整进行应用程序更新的终端比例之前,所
述方法还包括:根据历史更新记录,确定所述预设的带宽阈值。
本发明实施例,通过对当日的更新次数和终端的更新成功率进
行统计和运营,并根据统计数据更新历史更新记录。进而在所述根
据所述带宽的实时占用量和预设的带宽阈值调整进行应用程序更新
的终端比例之前,根据历史更新记录,确定所述预设的带宽阈值。
本发明实施例,通过终端打点、服务器请求统计和带宽图进行
数据挖掘,根据统计结果来确定更新所用带宽、调整带宽阈值以及
比例调整频率等配置,如果人均被比例控制频率过高,一天都没有
升级成功,可以查看各个服务器机房的比例控制平均值,给平均值
最低的服务器机房增加带宽,有的放矢。避免不必要的资源浪费和
满载后临时增加带宽,造成的不必要经济浪费。
图4示意性示出了本发明一个实施例的更新应用程序的方法流程
示意图。
参照图4,本发明实施例的更新应用程序的方法具体包括以下步
骤:
S41、发送应用程序更新指令,所述应用程序更新指令包含终端
进行应用程序更新所需文件列表。
具体的,终端与服务端之间配置有约定的升级接口,终端进行
升级时,先请求索引文件,索引文件包含升级对应的文件列表,然
后向服务端发送应用程序更新指令,所述应用程序更新指令包含终
端进行应用程序更新所需文件列表。
需要说明的是,本实施方式的方法的执行主体为终端。本实施
例中的终端为计算机、手机、平板电脑、掌上电脑PDA或笔记本等
设备,当然,还可为其他具有测速功能的设备,本发明对此不加以
限制。
需要说明的是,本实施例中的应用程序包括浏览器应用程序、
杀毒应用程序、聊天应用程序以及其他需要进行更新的应用程序,
本发明对此不加以限制。本实施例中的应用程序更新,包括应用程
序的版本升级以及应用程序的文件更新,其中,应用程序的版本升
级,如,360浏览器从7.0升到8.0等;应用程序的文件更新,如,
查毒应用的病毒文件库的更新。
可理解的是,本实施例中的应用程序更新指令对应的更新下载都
受限于同一带宽(即更新所用带宽),应用程序更新指令对应的类似
下载文件都是经过同一带宽实现。
S42、接收服务端根据所述应用程序更新所需文件列表返回的更
新响应信息。
在具体应用中,终端发送应用程序更新指令,所述应用程序更新
指令包含终端进行应用程序更新所需文件列表,以使服务端根据进行
应用程序更新所需文件列表、监测到的更新所用带宽的实时占用量、
和预设的带宽阈值调整进行应用程序更新的终端比例,并在比例调整
之后,确定终端是否为当前进行应用程序更新的终端,并向终端发送
更新响应信息。
具体的,服务端在根据所述带宽的实时占用量和预设的带宽阈
值调整进行应用程序更新的终端比例之后,进一步通过为每一触发
应用程序更新指令的终端生成一随机数的方式,确定终端是否为当
前进行应用程序更新的终端。如生成的随机数小于60的终端,确定
为当前进行应用程序更新的终端,不满足预设条件的随机数对应的
终端,如生成的随机数大于或等于60的终端,则按照约定时间再次
请求升级。实现了应用程序更新过程中更新比例的自动调整,在不
增加带宽的情况下保证服务可用性。
S43、若所述更新响应信息指示不允许所述终端进行本次更新,
则从所述更新失败响应信息中获取下一次请求更新的时间。
进一步地,所述方法还包括:若所述更新响应信息指示允许所
述终端进行本次更新,则执行所述应用程序的更新。
本发明实施例,通过向当前没有进行应用程序更新的终端发送
下一次请求更新的时间,以使终端按照约定时间再次请求更新,从
而保证了终端最终能够顺利实现应用程序的更新。
图5示意性示出了本发明一个实施例的更新应用程序的方法流程
示意图。
参照图5,本发明实施例的更新应用程序的方法具体包括以下步
骤:
S51、发送应用程序更新指令,以使服务端根据所述应用程序更
新指令发送随机数生成指令。
具体的,终端与服务端之间配置有约定的升级接口,终端进行
升级时,先请求索引文件,索引文件包含升级对应的文件列表,然
后向服务端发送应用程序更新指令,所述应用程序更新指令包含终
端进行应用程序更新所需文件列表。
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
需要说明的是,本实施方式的方法的执行主体为终端。本实施
例中的终端为计算机、手机、平板电脑、掌上电脑PDA或笔记本等
设备,当然,还可为其他具有测速功能的设备,本发明对此不加以
限制。
S52、接收所述服务端发送的随机数生成指令,生成对应的随机
数。
本实施例,通过接收服务端向终端发送随机数生成指令,通过
由终端生成对应的随机数的方式实现当前进行应用程序更新的终端
的确定。进而减小了对服务端资源的消耗,可以有效地提高随机数
的计算速度,快速实现当前进行应用程序更新的终端的确定,进而
提高终端应用程序更新的速度。
S53、若生成的随机数不满足所述预设条件,则向所述服务端获
取下一次请求更新的时间。
具体的,服务端向终端发送随机数生成指令后,终端生成对应
的随机数(0-100),将满足预设条件的随机数对应的终端,如生成
的随机数小于60的终端,确定为当前进行应用程序更新的终端,不
满足预设条件的随机数对应的终端,如生成的随机数大于或等于60
的终端,则按照约定时间再次请求升级。实现了应用程序更新过程
中更新比例的自动调整,在不增加带宽的情况下保证服务可用性。
进一步地,所述方法还包括:若生成的随机数满足所述预设条
件,则向服务端发送更新确认消息,进行应用程序更新。
本发明实施例,终端通过发送应用程序更新指令,以使服务端
根据所述应用程序更新指令发送随机数生成指令,根据随机数生成
指令,生成对应的随机数,当生成的随机数不满足所述预设条件,
则向所述服务端获取下一次请求更新的时间,以使终端按照约定时
间再次请求更新,从而保证了终端最终能够顺利实现应用程序的更
新。
图6示意性示出了本发明一个实施例的更新应用程序的装置的
结构示意图。
参照图6,本发明实施例的更新应用程序的装置具体包括监测单
元601以及调整单元602,其中:
所述的监测单元601,适于响应于终端触发的应用程序更新指
令,监测更新所用带宽的使用状态,以获取所述带宽的实时占用量;
所述的调整单元602,适于根据所述监测单元601得到的带宽的
实时占用量和预设的带宽阈值调整进行应用程序更新的终端比例,
以实现应用程序的更新。
根据本发明的一个可选实施例,所述调整单元,具体适于将所
述带宽的实时占用量与所述预设的带宽阈值进行比较,若所述带宽
的实时占用量大于或等于所述预设的带宽阈值,则将当前应用程序
更新的终端比例降低第一预设比例,若所述带宽的实时占用量小于
所述预设的带宽阈值,则将当前应用程序更新的终端比例增加第二
预设比例。
根据本发明的一个可选实施例,所述第一预设比例大于所述第
二预设比例,且所述第一预设比例和所述第二预设比例均大于0。
根据本发明的一个可选实施例,所述装置还包括:
第一确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之前,根据历史更新
记录,确定预设时间周期;
相应地,所述调整单元,具体适于根据所述带宽的实时占用量
和预设的带宽阈值,按照预设时间周期周期性调整应用程序更新的
终端比例。
根据本发明的一个可选实施例,所述装置还包括:
第二确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之后,为每一触发应
用程序更新指令的终端生成一随机数,将满足预设条件的随机数对
应的终端确定为当前进行应用程序更新的终端。
根据本发明的一个可选实施例,所述装置还包括:
第三确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之后,向每一触发应
用程序更新指令的终端发送随机数生成指令,以使各终端生成对应
的随机数,将满足预设条件的随机数对应的终端确定为当前进行应
用程序更新的终端。
根据本发明的一个可选实施例,所述装置还包括:
发送单元,适于向当前没有进行应用程序更新的终端发送下一
次请求更新的时间。
根据本发明的一个可选实施例,所述装置还包括:
第四确定单元,适于在所述响应于终端触发的应用程序更新指
令,监测更新所用带宽的使用状态,以获取所述带宽的实时占用量
之前,根据历史更新记录,确定更新所用带宽。
根据本发明的一个可选实施例,所述装置还包括:
第五确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之前,根据历史更新
记录,确定所述预设的带宽阈值。
图7示意性示出了本发明一个实施例的更新应用程序的装置的
结构示意图。
参照图7,本发明实施例的更新应用程序的装置具体包括发送单
元701、接收单元702以及获取单元703,其中:
所述的发送单元701,适于发送应用程序更新指令,所述应用程
序更新指令包含终端进行应用程序更新所需文件列表;
所述的接收单元702,适于接收服务端根据所述应用程序更新所
需文件列表返回的更新响应信息;
所述的获取单元703,适于当所述接收单元接收的更新响应信息
指示不允许所述终端进行本次更新时,从所述更新失败响应信息中
获取下一次请求更新的时间。
根据本发明的一个可选实施例,所述装置还包括:
更新单元,适于当所述接收单元接收的更新响应信息指示允许
所述终端进行本次更新时,执行所述应用程序的更新。
图8示意性示出了本发明一个实施例的更新应用程序的装置的
结构示意图。
参照图8,本发明实施例的更新应用程序的装置具体包括发送单
元801、生成单元802以及获取单元803,其中:
所述的发送单元801,适于发送应用程序更新指令,以使服务端
根据所述应用程序更新指令发送随机数生成指令;
所述的生成单元802,适于接收所述服务端发送的随机数生成指
令,生成对应的随机数;
所述的获取单元803,适于当所述生成单元生成的随机数不满足
所述预设条件时,向所述服务端获取下一次请求更新的时间;
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
根据本发明的一个可选实施例,所述装置还包括:
更新单元,适于当所述生成单元生成的随机数满足所述预设条
件时,向服务端发送更新确认消息,进行应用程序更新。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述
的比较简单,相关之处参见方法实施例的部分说明即可。
综上所述,本发明实施例提供的更新应用程序的方法及装置,通
过响应于终端触发的应用程序更新指令,监测更新所用带宽的使用状
态,以获取所述带宽的实时占用量,并根据所述带宽的实时占用量和
预设的带宽阈值调整进行应用程序更新的终端比例,以完成应用程序
的更新。本发明实现了应用程序更新过程中更新比例的自动调整,在
不增加带宽的情况下保证服务可用性。
应当注意,在此提供的算法和公式不与任何特定计算机、虚拟系
统或者其它设备固有相关。各种通用系统也可以与基于在此的示例一
起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。
此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种
编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的
描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理
解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些
实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说
明书的理解。
类似地,应当理解,为了精简本发明并帮助理解本发明各个方面
中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明
的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。
然而,并不应将该公开的方法和装置解释成反映如下意图:即所要求
保护的本发明要求比在每个权利要求中所明确记载的特征更多的特
征。更确切地说,如权利要求书所反映,发明方面在于少于前面公开
的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由
此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明
的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块
进行自适应性地改变并且把它们设置在与该实施例不同的一个或多
个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单
元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。
除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,
可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)
中公开的所有特征以及如此公开的任何方法或者设备的所有过程或
单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、
摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的
替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例
包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施
例的特征的组合意味着处于本发明的范围之内并且形成不同的实施
例。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多
个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的
技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器
(DSP)来实现根据本发明实施例的网站安全检测设备中的一些或者
全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所
描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程
序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机
可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可
以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其
他形式提供。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领
域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出
若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
本发明公开了A1、一种更新应用程序的方法,包括:
响应于终端触发的应用程序更新指令,监测更新所用带宽的使
用状态,以获取所述带宽的实时占用量;
根据所述带宽的实时占用量和预设的带宽阈值调整进行应用程
序更新的终端比例,以实现应用程序的更新。
A2、如A1所述的方法,所述根据所述带宽的实时占用量和预
设的带宽阈值调整进行应用程序更新的终端比例,具体包括:
将所述带宽的实时占用量与所述预设的带宽阈值进行比较;
若所述带宽的实时占用量大于或等于所述预设的带宽阈值,则
将当前应用程序更新的终端比例降低第一预设比例;
若所述带宽的实时占用量小于所述预设的带宽阈值,则将当前
应用程序更新的终端比例增加第二预设比例。
A3、如A2所述的方法,所述第一预设比例大于所述第二预设
比例,且所述第一预设比例和所述第二预设比例均大于0。
A4、如A1-A3任一项所述的方法,在所述根据所述带宽的实时
占用量和预设的带宽阈值调整进行应用程序更新的终端比例之前,
所述方法还包括:
根据历史更新记录,确定预设时间周期;
相应地,所述根据所述带宽的实时占用量和预设的带宽阈值调
整进行应用程序更新的终端比例,具体包括:
根据所述带宽的实时占用量和预设的带宽阈值,按照预设时间
周期周期性调整应用程序更新的终端比例。
A5、如A1-A3任一项所述的方法,在所述根据所述带宽的实时
占用量和预设的带宽阈值调整进行应用程序更新的终端比例之后,
所述方法还包括:
为每一触发应用程序更新指令的终端生成一随机数,将满足预
设条件的随机数对应的终端确定为当前进行应用程序更新的终端。
A6、如A1-A3任一项所述的方法,在所述根据所述带宽的实时
占用量和预设的带宽阈值调整进行应用程序更新的终端比例之后,
所述方法还包括:
向每一触发应用程序更新指令的终端发送随机数生成指令,以
使各终端生成对应的随机数;
将满足预设条件的随机数对应的终端确定为当前进行应用程序
更新的终端。
A7、如A1-A3任一项所述的方法,所述方法还包括:
向当前没有进行应用程序更新的终端发送下一次请求更新的时
间。
A8、如A1-A3任一项所述的方法,在所述响应于终端触发的应
用程序更新指令,监测更新所用带宽的使用状态,以获取所述带宽
的实时占用量之前,所述方法还包括:
根据历史更新记录,确定更新所用带宽。
A9、如A2或A3所述的方法,在所述根据所述带宽的实时占用
量和预设的带宽阈值调整进行应用程序更新的终端比例之前,所述
方法还包括:
根据历史更新记录,确定所述预设的带宽阈值。
B10、一种更新应用程序的方法,包括:
发送应用程序更新指令,所述应用程序更新指令包含终端进行
应用程序更新所需文件列表;
接收服务端根据所述应用程序更新所需文件列表返回的更新响
应信息;
若所述更新响应信息指示不允许所述终端进行本次更新,则从
所述更新失败响应信息中获取下一次请求更新的时间。
B11、如B10所述的方法,所述方法还包括:
若所述更新响应信息指示允许所述终端进行本次更新,则执行
所述应用程序的更新。
C12、一种更新应用程序的方法,包括:
发送应用程序更新指令,以使服务端根据所述应用程序更新指
令发送随机数生成指令;
接收所述服务端发送的随机数生成指令,生成对应的随机数;
若生成的随机数不满足所述预设条件,则向所述服务端获取下
一次请求更新的时间;
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
C13、如C12所述的方法,所述方法还包括:
若生成的随机数满足所述预设条件,则向服务端发送更新确认
消息,进行应用程序更新。
D14、一种更新应用程序的装置,包括:
监测单元,适于响应于终端触发的应用程序更新指令,监测更
新所用带宽的使用状态,以获取所述带宽的实时占用量;
调整单元,适于根据所述监测单元得到的带宽的实时占用量和
预设的带宽阈值调整进行应用程序更新的终端比例,以实现应用程
序的更新。
D15、如D14所述的装置,所述调整单元,具体适于将所述带
宽的实时占用量与所述预设的带宽阈值进行比较,若所述带宽的实
时占用量大于或等于所述预设的带宽阈值,则将当前应用程序更新
的终端比例降低第一预设比例,若所述带宽的实时占用量小于所述
预设的带宽阈值,则将当前应用程序更新的终端比例增加第二预设
比例。
D16、如D15所述的装置,所述第一预设比例大于所述第二预
设比例,且所述第一预设比例和所述第二预设比例均大于0。
D17、如D14-D16任一项所述的装置,所述装置还包括:
第一确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之前,根据历史更新
记录,确定预设时间周期;
相应地,所述调整单元,具体适于根据所述带宽的实时占用量
和预设的带宽阈值,按照预设时间周期周期性调整应用程序更新的
终端比例。
D18、如D14-D16任一项所述的装置,所述装置还包括:
第二确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之后,为每一触发应
用程序更新指令的终端生成一随机数,将满足预设条件的随机数对
应的终端确定为当前进行应用程序更新的终端。
D19、如D14-D16任一项所述的装置,所述装置还包括:
第三确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之后,向每一触发应
用程序更新指令的终端发送随机数生成指令,以使各终端生成对应
的随机数,将满足预设条件的随机数对应的终端确定为当前进行应
用程序更新的终端。
D20、如D14-D16任一项所述的装置,所述装置还包括:
发送单元,适于向当前没有进行应用程序更新的终端发送下一
次请求更新的时间。
D21、如D求14-D16任一项所述的装置,所述装置还包括:
第四确定单元,适于在所述响应于终端触发的应用程序更新指
令,监测更新所用带宽的使用状态,以获取所述带宽的实时占用量
之前,根据历史更新记录,确定更新所用带宽。
D22、如D15或D16所述的装置,所述装置还包括:
第五确定单元,适于在所述根据所述带宽的实时占用量和预设
的带宽阈值调整进行应用程序更新的终端比例之前,根据历史更新
记录,确定所述预设的带宽阈值。
E23、一种更新应用程序的装置,包括:
发送单元,适于发送应用程序更新指令,所述应用程序更新指
令包含终端进行应用程序更新所需文件列表;
接收单元,适于接收服务端根据所述应用程序更新所需文件列
表返回的更新响应信息;
获取单元,适于当所述接收单元接收的更新响应信息指示不允
许所述终端进行本次更新时,从所述更新失败响应信息中获取下一
次请求更新的时间。
E24、如E23所述的装置,所述装置还包括:
更新单元,适于当所述接收单元接收的更新响应信息指示允许
所述终端进行本次更新时,执行所述应用程序的更新。
F25、一种更新应用程序的装置,包括:
发送单元,适于发送应用程序更新指令,以使服务端根据所述
应用程序更新指令发送随机数生成指令;
生成单元,适于接收所述服务端发送的随机数生成指令,生成
对应的随机数;
获取单元,适于当所述生成单元生成的随机数不满足所述预设
条件时,向所述服务端获取下一次请求更新的时间;
其中,所述随机数生成指令规定了各终端生成的随机数的数值
范围,以及满足所述预设条件的随机数在所述数值范围内的一特定
范围中。
F26、如F25所述的装置,所述装置还包括:
更新单元,适于当所述生成单元生成的随机数满足所述预设条件
时,向服务端发送更新确认消息,进行应用程序更新。