CN109117163A - 一种客户端升级方法及装置 - Google Patents

一种客户端升级方法及装置 Download PDF

Info

Publication number
CN109117163A
CN109117163A CN201811000546.1A CN201811000546A CN109117163A CN 109117163 A CN109117163 A CN 109117163A CN 201811000546 A CN201811000546 A CN 201811000546A CN 109117163 A CN109117163 A CN 109117163A
Authority
CN
China
Prior art keywords
client
upgraded
application software
access times
upgrading
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811000546.1A
Other languages
English (en)
Other versions
CN109117163B (zh
Inventor
谢晓芳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201811000546.1A priority Critical patent/CN109117163B/zh
Publication of CN109117163A publication Critical patent/CN109117163A/zh
Application granted granted Critical
Publication of CN109117163B publication Critical patent/CN109117163B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种客户端升级方法及装置,客户端在升级任务启动后,会从服务器获取升级文件,升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新升级。本发明通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件。

Description

一种客户端升级方法及装置
技术领域
本发明涉及客户端开发技术领域,更具体的说,涉及一种客户端升级方法及装置。
背景技术
客户端(Client)是指与服务器相对应,并与服务器互相配合为用户提供本地服务的软件。在终端设备上运行的客户端,包括基本的操作系统软件和各种应用软件,能够保证终端设备的运行,并向用户提供多种网络服务,如网页浏览、邮件收发和即时通信等。
由于通信技术的飞速发展,不断会推出新的操作系统和应用软件,因此客户端也需要不断地进行升级。目前客户端升级一般采用灰度覆盖方式,具体为:对客户端的设备ID进行一系列计算得到灰度值,当灰度值小于灰度阈值时,对该客户端进行升级,反之,当灰度值不小于灰度阈值时,对该客户端不进行升级。
虽然,现有的客户端升级方式可以较准确的达到预期灰度值,但是在计算各个客户端相对应的灰度值时,采用参数不同,计算得到的灰度值也会存在差别,这就意味着升级客户端存在一定的随机性,从而导致经常使用某一应用软件的用户可能无法在第一时间内使用到升级应用软件。
发明内容
有鉴于此,本发明公开一种客户端升级方法及装置,以实现在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件。
一种客户端升级方法,应用于客户端,所述客户端升级方法包括:
当升级任务启动后,从服务器获取升级文件,所述升级文件包括:客户端信息和升级策略,所述客户端信息包括:所述服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
获取本地设备ID;
对所述本地设备ID进行预设处理,得到所述本地设备ID对应的客户端的灰度值;
判断所述灰度值是否小于灰度阈值;
若所述灰度值小于所述灰度阈值,则继续判断所述客户端信息中的设备ID是否存在与所述本地设备ID相同的设备ID;
如果存在,则利用所述升级文件对客户端组件进行更新,完成当前升级任务。
优选的,所述对所述本地设备ID进行预设处理,得到相对应的灰度值的过程包括:
对所述本地设备ID采用MurmurHash算法得到一个与所述本地设备ID相对应的二进制值;
对所述二进制值进行取模运算,得到所述灰度值。
优选的,当所述灰度值不小于所述灰度阈值时,所述客户端升级方法还包括:
退出升级流程。
优选的,当所述客户端信息中的设备ID不存在与所述本地设备ID相同的设备ID时,所述客户端升级方法还包括:
退出升级流程,或采用灰度覆盖方式对所述客户端组件进行更新,完成当前升级任务。
一种客户端升级方法,应用于服务器,所述客户端升级方法包括:
获取客户端在使用待升级应用软件时发送的投递数据,所述投递数据包括:所述客户端的设备ID以及所述待升级应用软件的相关信息;
对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到相同待升级应用软件在各个设备ID上的使用次数,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID;
获取用户部署的升级文件,所述升级文件由用户根据客户端信息和升级策略配置得到,所述客户端信息包括:筛选出的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略;
当客户端启动升级任务时,将所述升级文件发送给启动升级任务的待升级客户端,以使所述待升级客户端在确定根据本地设备ID得到的灰度值小于灰度阈值,且所述客户端信息中的设备ID存在与所述本地设备ID相同的设备ID时,利用所述升级文件对客户端组件进行更新,完成升级任务。
优选的,所述筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID的过程包括:
对各个设备ID按照对相同待升级应用软件的使用次数由大到小的顺序进行排序;
从排序的各个设备ID中,筛选出对相同待升级应用软件的使用次数超过所述预设使用次数的设备ID。
一种客户端升级装置,应用于客户端,所述客户端升级装置包括:
第一获取单元,用于当升级任务启动后,从服务器获取升级文件,所述升级文件包括:客户端信息和升级策略,所述客户端信息包括:所述服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
第二获取单元,用于获取本地设备ID;
处理单元,用于对所述本地设备ID进行预设处理,得到所述本地设备ID对应的客户端的灰度值;
第一判断单元,用于判断所述灰度值是否小于灰度阈值;
第二判断单元,用于在所述第一判断单元判断为是的情况下,继续判断所述客户端信息中的设备ID是否存在与所述本地设备ID相同的设备ID;
第一升级单元,用于在所述第二判断单元判断为是的情况下,利用所述升级文件对客户端组件进行更新,完成当前升级任务。
优选的,所述处理单元包括:
第一运算子单元,用于对所述本地设备ID采用MurmurHash算法得到一个与所述本地设备ID相对应的二进制值;
第二运算子单元,用于对所述二进制值进行取模运算,得到所述灰度值。
优选的,还包括:
第一退出单元,用于在所述第一判断单元判断为否的情况下,退出升级流程。
优选的,还包括:
第二退出单元,用于在所述第二判断单元判断为否的情况下,退出升级流程;
或是,
第二升级单元,用于在所述第二判断单元判断为否的情况下,采用灰度覆盖方式对所述客户端组件进行更新,完成当前升级任务。
一种客户端升级装置,应用于服务器,所述客户端升级装置包括:
第三获取单元,用于获取客户端在使用待升级应用软件时发送的投递数据,所述投递数据包括:所述客户端的设备ID以及所述待升级应用软件的相关信息;
分析处理单元,用于对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到相同待升级应用软件在各个设备ID上的使用次数,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
筛选单元,用于筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID;
第四获取单元,用于获取用户部署的升级文件,所述升级文件由用户根据客户端信息和升级策略配置得到,所述客户端信息包括:筛选出的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略;
发送单元,用于当客户端启动升级任务时,将所述升级文件发送给启动升级任务的待升级客户端,以使所述待升级客户端在确定根据本地设备ID得到的灰度值小于灰度阈值,且所述客户端信息中的设备ID存在与所述本地设备ID相同的设备ID时,利用所述升级文件对客户端组件进行更新,完成升级任务。
优选的,所述筛选单元包括:
排序子单元,用于对各个设备ID按照对相同待升级应用软件的使用次数由大到小的顺序进行排序;
筛选子单元,用于从排序的各个设备ID中,筛选出对相同待升级应用软件的使用次数超过所述预设使用次数的设备ID。
从上述的技术方案可知,本发明公开了一种客户端升级方法及装置,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据公开的附图获得其他的附图。
图1为本发明实施例公开的一种客户端升级方法流程图;
图2为本发明实施例公开的另一种客户端升级方法流程图;
图3为本发明实施例公开的另一种客户端升级方法流程图;
图4为本发明实施例公开的一种客户端升级装置的结构示意图;
图5为本发明实施例公开的另一种客户端升级装置的结构示意图;
图6为本发明实施例公开的另一种客户端升级装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种客户端升级方法及装置,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
参见图1,本发明一实施例公开的一种客户端升级方法流程图,该方法应用于客户端,包括步骤:
步骤S101、当升级任务启动后,从服务器获取升级文件;
升级任务可以在每次客户端开始运行时自动启动。例如,当用户登录即时通信(IM)客户端,IM客户端开始运行时,IM客户端中的升级任务自动启动。
升级任务也可以根据用户需求,在用户的控制下被动启动。
本实施例中,从服务器获取的升级文件可以包括:客户端信息和升级策略,其中,升级策略包括:灰度阈值策略,灰度阈值策略为:采用灰度阈值对进行应用软件升级的设备ID筛选方案的概括称呼。
客户端信息包括:对待升级应用软件的使用次数超过预设使用次数的设备ID。
具体的,当客户端每次在使用待升级应用软件时,该客户端就会向服务器发送投递数据,该投递数据包括:客户端的设备ID以及待升级应用软件的相关信息,该相关信息至少包括:探针和pingback(自动引用通知),服务器对接收到的投递数据进行分析处理,分析处理过程主要包括:将投递数据中携带的客户端的设备ID与相对应的待升级应用软件进行分离。服务器对预设时间段内收到的各个客户端发送的投递数据均进行分析处理后,会对各个设备ID按照对相同待升级应用软件的使用次数进行统计,并对各个设备ID对相同待升级应用软件的使用次数由大到小(或是由小到达)的顺序进行排序,然后从排序后的设备ID中筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID,其中,本段中所述的相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件。
步骤S102、获取本地设备ID;
具体的,本地设备ID指的是:客户端获取所在设备的设备ID,其中,每个设备都有唯一对应的设备ID,该设备ID也即该设备的唯一编码。
步骤S103、对本地设备ID进行预设处理,得到本地设备ID对应的客户端的灰度值;
具体的,对本地设备ID采用MurmurHash算法得到一个与本地设备ID相对应的二进制值,对所述二进制值进行取模运算,得到相对应的灰度值。
MurmurHash是一种非加密型哈希函数,适用于一般的哈希检索操作,与其它哈希函数相比,对于规律性较强的key,MurmurHash的随机分布特征表现更良好。
步骤S104、判断灰度值是否小于灰度阈值,如果是,则执行步骤S105;
需要说明的是,灰度阈值指的是:期望升级版本客户端在所有版本客户端中的占比值,其是一个0~100的整数值。当灰度值小于灰度阈值时,则对灰度值对应的客户端进行升级,反之,当灰度值不小于灰度阈值时,则不对该灰度值相对应的客户端进行升级。
步骤S105、继续判断客户端信息中的设备ID是否存在与本地设备ID相同的设备ID,如果是,则执行步骤S106;
基于上述可知,服务器对各个设备ID按照对相同待升级应用软件的使用次数进行了统计和排序,并从排序后的设备ID中筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID,也就是说,本发明对预设时间段内经常使用相同待升级应用软件的设备ID进行了筛选,以便优先对筛选出的设备ID对应的客户端进行优先升级。
客户端通过将本地设备ID与从使用相同待升级应用软件的设备ID中筛选出的设备ID进行相同,来确定是否对该本地设备ID对应的客户端进行升级,并在确定筛选出的设备ID中存在与本地设备ID相同的设备ID时,确定为对本地设备ID对应的客户端进行升级。
步骤S106、利用升级文件对客户端组件进行更新,完成当前升级任务。
其中,客户端组件指的是与待待升级应用软件相关的组件。
综上可知,本发明公开的客户端升级方法,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
为进一步优化上述实施例,参见图2,本发明另一实施例公开的一种客户端升级方法流程图,在图1所示实施例的基础上,当步骤S104判定灰度值不小于灰度阈值时,在步骤S104之后,还可以包括步骤:
步骤S107、退出升级流程。
进一步,当步骤S105判定客户端信息中的设备ID不存在与本地设备ID相同的设备ID时,在步骤S105之后,还可以执行步骤S107。
当然,当步骤S105判定客户端信息中的设备ID不存在与本地设备ID相同的设备ID时,也可以继续采用传统的灰度覆盖方式对客户端组件进行更新,完成当前升级任务,也就是说,当步骤S105判断为否时,对所有灰度值小于灰度阈值的客户端进行升级。
综上可知,本发明公开的客户端升级方法,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
参见图3,本发明另一实施例公开的一种客户端升级方法流程图,该方法应用于服务器,该方法包括步骤:
步骤S201、获取客户端在使用待升级应用软件时发送的投递数据;
具体的,当客户端每次在使用待升级应用软件时,该客户端就会向服务器发送投递数据,该投递数据包括:客户端的设备ID以及待升级应用软件的相关信息,该相关信息至少包括:探针和pingback(自动引用通知)。
步骤S202、对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到相同待升级应用软件在各个设备ID上的使用次数;
其中,预设时间段的数值依据实际需要而定,比如2个星期,本发明在此不做限定。
具体的,服务器对接收到的投递数据进行分析处理的过程包括:将投递数据中携带的客户端的设备ID与相对应的待升级应用软件进行分离。当服务器对预设时间段内收到的各个客户端发送的投递数据均进行分析处理后,会对各个设备ID按照对相同待升级应用软件的使用次数进行统计,得到相同待升级应用软件在各个设备ID上的使用次数,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件。
步骤S203、筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID;
具体的,对各个设备ID对相同待升级应用软件的使用次数由大到小(或是由小到达)的顺序进行排序,然后从排序后的设备ID中筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID。
步骤S204、获取用户部署的升级文件;
具体的,当服务器筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID,会将待升级应用软件和筛选出的相对应的设备ID输出给用户(具体为客户端升级负责人)进行展示。由客户端升级负责人根据客户端信息和升级策略配置得到升级文件,并将该升级文件部署至服务器。
其中,客户端信息包括:筛选出的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略。
步骤S205、当客户端启动升级任务时,将升级文件发送给启动升级任务的待升级客户端,以使所述待升级客户端在确定根据本地设备ID得到的灰度值小于所述灰度阈值,且所述客户端信息中的设备ID存在与所述本地设备ID相同的设备ID时,利用所述升级文件对客户端组件进行更新,完成升级任务。
需要说明的是,客户端在从到服务器获取到升级文件后,基于该升级文件的升级过程请参见上述实施例对应部分,此处不再赘述。
综上可知,本发明公开的客户端升级方法,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
与上述方法实施例相对应,本发明还公开了一种客户端升级装置。
参见图4,本发明一实施例公开的一种客户端升级装置的结构示意图,该装置应用于客户端,该装置包括:
第一获取单元301,用于当升级任务启动后,从服务器获取升级文件;
升级任务可以在每次客户端开始运行时自动启动。例如,当用户登录即时通信(IM)客户端,IM客户端开始运行时,IM客户端中的升级任务自动启动。
升级任务也可以根据用户需求,在用户的控制下被动启动。
本实施例中,从服务器获取的升级文件可以包括:客户端信息和升级策略,其中,升级策略包括:灰度阈值策略,灰度阈值的具体数值依据实际需要而定,本发明在此不做限定。
客户端信息包括:对待升级应用软件的使用次数超过预设使用次数的设备ID。
具体的,当客户端每次在使用待升级应用软件时,该客户端就会向服务器发送投递数据,该投递数据包括:客户端的设备ID以及待升级应用软件的相关信息,该相关信息至少包括:探针和pingback(自动引用通知),服务器对接收到的投递数据进行分析处理,分析处理过程主要包括:将投递数据中携带的客户端的设备ID与相对应的待升级应用软件进行分离。服务器对预设时间段内收到的各个客户端发送的投递数据均进行分析处理后,会对各个设备ID按照对相同待升级应用软件的使用次数进行统计,并对各个设备ID对相同待升级应用软件的使用次数由大到小(或是由小到达)的顺序进行排序,然后从排序后的设备ID中筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件。
第二获取单元302,用于获取本地设备ID;
具体的,本地设备ID指的是:客户端获取所在设备的设备ID,其中,每个设备都有唯一对应的设备ID,该设备ID也即该设备的唯一编码。
处理单元303,用于对所述本地设备ID进行预设处理,得到本地设备ID对应的客户端的的灰度值;
具体的,处理单元303包括:
第一运算子单元,用于对本地设备ID采用MurmurHash算法得到一个相对应的二进制值;
第二运算子单元,用于对所述二进制值进行取模运算,得到相对应的灰度值。
MurmurHash是一种非加密型哈希函数,适用于一般的哈希检索操作,与其它哈希函数相比,对于规律性较强的key,MurmurHash的随机分布特征表现更良好。
第一判断单元304,用于判断所述灰度值是否小于所述灰度阈值;
需要说明的是,灰度阈值指的是:期望升级版本客户端在所有版本客户端中的占比值,其是一个0~100的整数值。当灰度值小于灰度阈值时,则对灰度值对应的客户端进行升级,反之,当灰度值不小于灰度阈值时,则不对该灰度值相对应的客户端进行升级。
第二判断单元305,用于在所述第一判断单元304判断为是的情况下,继续判断所述客户端信息中的设备ID是否存在与所述本地设备ID相同的设备ID;
基于上述可知,服务器对各个设备ID按照对相同待升级应用软件的使用次数进行了统计和排序,并从排序后的设备ID中筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID,也就是说,本发明对预设时间段内经常使用相同待升级应用软件的设备ID进行了筛选,以便优先对筛选出的设备ID对应的客户端进行优先升级。
客户端通过将本地设备ID与从使用相同待升级应用软件的设备ID中筛选出的设备ID进行相同,来确定是否对该本地设备ID对应的客户端进行升级,并在确定筛选出的设备ID中存在与本地设备ID相同的设备ID时,确定为对本地设备ID对应的客户端进行升级。
第一升级单元306,用于在所述第二判断单元305判断为是的情况下,利用所述升级文件对客户端组件进行更新,完成当前升级任务。
综上可知,本发明公开的客户端升级装置,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
参见图5,本发明另一实施例公开的一种客户端升级装置的结构示意图,客户端升级装置应用于客户端,在图4所示实施例的基础上,客户端升级装置还可以包括:
第一退出单元307,用于在所述第一判断单元304判断为否的情况下,退出升级流程。
进一步,当第二判断单元305判定客户端信息中的设备ID不存在与本地设备ID相同的设备ID时,客户端升级装置还可以包括:
第二退出单元308,用于在所述第二判断单元305判断为否的情况下,退出升级流程;
或是,
第二升级单元309,用于在所述第二判断单元305判断为否的情况下,采用灰度覆盖方式对所述客户端组件进行更新,完成当前升级任务。也就是说,当第二判断单元305判定为否时,对所有灰度值小于灰度阈值的客户端进行升级。
综上可知,本发明公开的客户端升级装置,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
参见图6,本发明另一实施例公开的一种客户端升级装置的结构示意图,该客户端升级装置应用于服务器,该客户端升级装置包括:
第三获取单元401,用于获取客户端在使用待升级应用软件时发送的投递数据,所述投递数据包括:所述客户端的设备ID以及所述待升级应用软件的相关信息;
具体的,当客户端每次在使用待升级应用软件时,该客户端就会向服务器发送投递数据,该投递数据包括:客户端的设备ID以及待升级应用软件的相关信息,该相关信息至少包括:探针和pingback(自动引用通知)。
分析处理单元402,用于对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到相同待升级应用软件在各个设备ID上的使用次数;
其中,预设时间段的数值依据实际需要而定,比如2个星期,本发明在此不做限定。
具体的,服务器对接收到的投递数据进行分析处理的过程包括:将投递数据中携带的客户端的设备ID与相对应的待升级应用软件进行分离。当服务器对预设时间段内收到的各个客户端发送的投递数据均进行分析处理后,会对各个设备ID按照对相同待升级应用软件的使用次数进行统计,得到相同待升级应用软件在各个设备ID上的使用次数。
筛选单元403,用于筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID;
具体的,筛选单元403可以包括:
排序子单元,用于对各个设备ID按照对相同待升级应用软件的使用次数由大到小的顺序进行排序,或是由小到到的顺序进行排序。
筛选子单元,用于从排序的各个设备ID中,筛选出对相同待升级应用软件的使用次数超过所述预设使用次数的设备ID。
第四获取单元404,用于获取用户部署的升级文件;
具体的,当服务器筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID,会将待升级应用软件和筛选出的相对应的设备ID输出给用户(具体为客户端升级负责人)进行展示。由客户端升级负责人根据客户端信息和升级策略配置得到升级文件,并将该升级文件部署至服务器,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件。
其中,客户端信息包括:筛选出的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略。
发送单元405,用于当客户端启动升级任务时,将所述升级文件发送给启动升级任务的待升级客户端,以使所述待升级客户端在确定根据本地设备ID得到的灰度值小于所述灰度阈值,且所述客户端信息中的设备ID存在与所述本地设备ID相同的设备ID时,利用所述升级文件对客户端组件进行更新,完成升级任务。
需要说明的是,客户端在从到服务器获取到升级文件后,基于该升级文件的升级过程请参见上述实施例对应部分,此处不再赘述。
综上可知,本发明公开的客户端升级装置,客户端在升级任务启动后,会从服务器获取升级文件,该升级文件包括:客户端信息和升级策略,客户端信息包括:服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对待升级应用软件的使用次数超过预设使用次数的设备ID,升级策略包括:灰度阈值策略;客户端根据本地设备ID得到灰度值,并在确定灰度值小于灰度阈值,且客户端信息中的设备ID存在与本地设备ID相同的设备ID时,利用升级文件对客户端组件进行更新,完成当前升级任务。本发明在正常灰度覆盖方案的基础上,通过对经常使用待升级应用软件的设备ID进行筛选,并对筛选出的设备ID上客户端组件进行优先升级,保证了经常使用待升级应用软件的用户可以在第一时间内使用到升级应用软件,从而解决了传统方案存在的问题。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (12)

1.一种客户端升级方法,其特征在于,应用于客户端,所述客户端升级方法包括:
当升级任务启动后,从服务器获取升级文件,所述升级文件包括:客户端信息和升级策略,所述客户端信息包括:所述服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
获取本地设备ID;
对所述本地设备ID进行预设处理,得到所述本地设备ID对应的客户端的灰度值;
判断所述灰度值是否小于灰度阈值;
若所述灰度值小于所述灰度阈值,则判断所述客户端信息中的设备ID是否存在与所述本地设备ID相同的设备ID;
如果存在,则利用所述升级文件对客户端组件进行更新,完成当前升级任务。
2.根据权利要求1所述的客户端升级方法,其特征在于,所述对所述本地设备ID进行预设处理,得到相对应的灰度值的过程包括:
对所述本地设备ID采用MurmurHash算法得到一个与所述本地设备ID相对应的二进制值;
对所述二进制值进行取模运算,得到所述灰度值。
3.根据权利要求1所述的客户端升级方法,其特征在于,当所述灰度值不小于所述灰度阈值时,所述客户端升级方法还包括:
退出升级流程。
4.根据权利要求1所述的客户端升级方法,其特征在于,当所述客户端信息中的设备ID不存在与所述本地设备ID相同的设备ID时,所述客户端升级方法还包括:
退出升级流程,或采用灰度覆盖方式对所述客户端组件进行更新,完成当前升级任务。
5.一种客户端升级方法,其特征在于,应用于服务器,所述客户端升级方法包括:
获取客户端在使用待升级应用软件时发送的投递数据,所述投递数据包括:所述客户端的设备ID以及所述待升级应用软件的相关信息;
对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到相同待升级应用软件在各个设备ID上的使用次数,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID;
获取用户部署的升级文件,所述升级文件由用户根据客户端信息和升级策略配置得到,所述客户端信息包括:筛选出的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略;
当客户端启动升级任务时,将所述升级文件发送给启动升级任务的待升级客户端,以使所述待升级客户端在确定根据本地设备ID得到的灰度值小于灰度阈值,且所述客户端信息中的设备ID存在与所述本地设备ID相同的设备ID时,利用所述升级文件对客户端组件进行更新,完成升级任务。
6.根据权利要求5所述的客户端升级方法,其特征在于,所述筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID的过程包括:
对各个设备ID按照对相同待升级应用软件的使用次数由大到小的顺序进行排序;
从排序的各个设备ID中,筛选出对相同待升级应用软件的使用次数超过所述预设使用次数的设备ID。
7.一种客户端升级装置,其特征在于,应用于客户端,所述客户端升级装置包括:
第一获取单元,用于当升级任务启动后,从服务器获取升级文件,所述升级文件包括:客户端信息和升级策略,所述客户端信息包括:所述服务器对预设时间段内收到的各个客户端发送的投递数据进行分析处理时,得到的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
第二获取单元,用于获取本地设备ID;
处理单元,用于对所述本地设备ID进行预设处理,得到所述本地设备ID对应的客户端的灰度值;
第一判断单元,用于判断所述灰度值是否小于灰度阈值;
第二判断单元,用于在所述第一判断单元判断为是的情况下,继续判断所述客户端信息中的设备ID是否存在与所述本地设备ID相同的设备ID;
第一升级单元,用于在所述第二判断单元判断为是的情况下,利用所述升级文件对客户端组件进行更新,完成当前升级任务。
8.根据权利要求7所述的客户端升级装置,其特征在于,所述处理单元包括:
第一运算子单元,用于对所述本地设备ID采用MurmurHash算法得到一个与所述本地设备ID相对应的二进制值;
第二运算子单元,用于对所述二进制值进行取模运算,得到所述灰度值。
9.根据权利要求7所述的客户端升级装置,其特征在于,还包括:
第一退出单元,用于在所述第一判断单元判断为否的情况下,退出升级流程。
10.根据权利要求9所述的客户端升级装置,其特征在于,还包括:
第二退出单元,用于在所述第二判断单元判断为否的情况下,退出升级流程;
或是,
第二升级单元,用于在所述第二判断单元判断为否的情况下,采用灰度覆盖方式对所述客户端组件进行更新,完成当前升级任务。
11.一种客户端升级装置,其特征在于,应用于服务器,所述客户端升级装置包括:
第三获取单元,用于获取客户端在使用待升级应用软件时发送的投递数据,所述投递数据包括:所述客户端的设备ID以及所述待升级应用软件的相关信息;
分析处理单元,用于对预设时间段内收到的各个客户端发送的投递数据进行分析处理,得到相同待升级应用软件在各个设备ID上的使用次数,其中,所述相同待升级应用软件指的是各个客户端使用的同一款待升级应用软件;
筛选单元,用于筛选出对相同待升级应用软件的使用次数超过预设使用次数的设备ID;
第四获取单元,用于获取用户部署的升级文件,所述升级文件由用户根据客户端信息和升级策略配置得到,所述客户端信息包括:筛选出的对相同待升级应用软件的使用次数超过预设使用次数的设备ID,所述升级策略包括:灰度阈值策略;
发送单元,用于当客户端启动升级任务时,将所述升级文件发送给启动升级任务的待升级客户端,以使所述待升级客户端在确定根据本地设备ID得到的灰度值小于灰度阈值,且所述客户端信息中的设备ID存在与所述本地设备ID相同的设备ID时,利用所述升级文件对客户端组件进行更新,完成升级任务。
12.根据权利要求11所述的客户端升级装置,其特征在于,所述筛选单元包括:
排序子单元,用于对各个设备ID按照对相同待升级应用软件的使用次数由大到小的顺序进行排序;
筛选子单元,用于从排序的各个设备ID中,筛选出对相同待升级应用软件的使用次数超过所述预设使用次数的设备ID。
CN201811000546.1A 2018-08-30 2018-08-30 一种客户端升级方法及装置 Active CN109117163B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811000546.1A CN109117163B (zh) 2018-08-30 2018-08-30 一种客户端升级方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811000546.1A CN109117163B (zh) 2018-08-30 2018-08-30 一种客户端升级方法及装置

Publications (2)

Publication Number Publication Date
CN109117163A true CN109117163A (zh) 2019-01-01
CN109117163B CN109117163B (zh) 2022-03-15

Family

ID=64860526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811000546.1A Active CN109117163B (zh) 2018-08-30 2018-08-30 一种客户端升级方法及装置

Country Status (1)

Country Link
CN (1) CN109117163B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111399875A (zh) * 2020-03-06 2020-07-10 咪咕文化科技有限公司 灰度升级控制方法、装置、电子设备及存储介质
CN114466098A (zh) * 2022-01-19 2022-05-10 上海黑眸智能科技有限责任公司 基于app交互的ota升级方法、系统、设备端以及app端

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136013A (zh) * 2011-12-01 2013-06-05 腾讯科技(深圳)有限公司 软件升级方法和系统
US20140101647A1 (en) * 2012-09-04 2014-04-10 Tencent Technology (Shenzhen) Company Limited Systems and Methods for Software Upgrade Recommendation
CN104579768A (zh) * 2014-12-29 2015-04-29 广州酷狗计算机科技有限公司 客户端升级方法和装置
CN105138371A (zh) * 2015-08-26 2015-12-09 小米科技有限责任公司 软件升级方法及装置
CN106162345A (zh) * 2015-04-10 2016-11-23 Tcl集团股份有限公司 一种智能电视系统的灰度升级方法及系统
CN106603311A (zh) * 2017-01-18 2017-04-26 北京洋浦伟业科技发展有限公司 Ota升级方法、客户端、服务器和系统
CN107957888A (zh) * 2016-10-14 2018-04-24 北京国双科技有限公司 应用程序的灰度升级方法及装置
CN108093096A (zh) * 2017-12-19 2018-05-29 五八有限公司 服务端的访问链接的升级方法、服务器及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103136013A (zh) * 2011-12-01 2013-06-05 腾讯科技(深圳)有限公司 软件升级方法和系统
US20140304697A1 (en) * 2011-12-01 2014-10-09 Tencent Technology (Shenzhen) Company Limited Method and system for upgrading software
US20140101647A1 (en) * 2012-09-04 2014-04-10 Tencent Technology (Shenzhen) Company Limited Systems and Methods for Software Upgrade Recommendation
CN104579768A (zh) * 2014-12-29 2015-04-29 广州酷狗计算机科技有限公司 客户端升级方法和装置
CN106162345A (zh) * 2015-04-10 2016-11-23 Tcl集团股份有限公司 一种智能电视系统的灰度升级方法及系统
CN105138371A (zh) * 2015-08-26 2015-12-09 小米科技有限责任公司 软件升级方法及装置
CN107957888A (zh) * 2016-10-14 2018-04-24 北京国双科技有限公司 应用程序的灰度升级方法及装置
CN106603311A (zh) * 2017-01-18 2017-04-26 北京洋浦伟业科技发展有限公司 Ota升级方法、客户端、服务器和系统
CN108093096A (zh) * 2017-12-19 2018-05-29 五八有限公司 服务端的访问链接的升级方法、服务器及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111399875A (zh) * 2020-03-06 2020-07-10 咪咕文化科技有限公司 灰度升级控制方法、装置、电子设备及存储介质
CN111399875B (zh) * 2020-03-06 2023-09-05 咪咕文化科技有限公司 灰度升级控制方法、装置、电子设备及存储介质
CN114466098A (zh) * 2022-01-19 2022-05-10 上海黑眸智能科技有限责任公司 基于app交互的ota升级方法、系统、设备端以及app端
CN114466098B (zh) * 2022-01-19 2023-12-26 上海黑眸智能科技有限责任公司 基于app交互的ota升级方法、系统、设备端以及app端

Also Published As

Publication number Publication date
CN109117163B (zh) 2022-03-15

Similar Documents

Publication Publication Date Title
USRE41940E1 (en) Method and apparatus for filtering E-mail
CN104735699B (zh) 一种基于移动终端的数据流量监控方法、系统及移动终端
JP4703629B2 (ja) メールボックスポーリングプリエンプティブ基準
US8880604B2 (en) Determination of a spammer through social network characterization
WO2000072183A3 (en) Service level management
CN104021141B (zh) 数据处理和云服务的方法、装置及系统
WO2005006150A3 (en) Method and system for managing radio resources in a time-slotted communication system
CN105813214B (zh) 一种共享网络的资源调度方法、设备和系统
CN109117163A (zh) 一种客户端升级方法及装置
EP1492278A3 (en) Configuration of wireless network client
EP1322069A3 (en) Method and apparatus for automatic discovery of network devices with data forwarding capabilities
CN107086954A (zh) 消息推送方法及装置
EP1150471A3 (en) Method and system for recommending an available network protocol
CN106685762A (zh) 一种数据回源的调度方法、装置及cdn网络
CN106953926A (zh) 一种路由方法及装置
EP2178252A1 (en) Method for sharing community network service information
CN103179530A (zh) 一种短信拦截方法及装置
CN102694873A (zh) 一种地址池分配系统及方法
CN104796934A (zh) 一种频段调度方法和装置
CN108712269A (zh) 离网用户的找回方法及装置
CN108073408A (zh) 自助终端的系统更新方法和装置
CN107484188A (zh) 一种管理无线接入点的方法和无线接入点控制器
CN104298596B (zh) 一种测试方案随机分配方法、装置及服务器
CN106941532B (zh) 一种应用于分布式系统的数据传输方法及装置
US20200341747A1 (en) Methods for node quality control in large scale distributed systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant