一种客户端升级方法和系统技术方案

技术编号:7466888 阅读:268 留言:0更新日期:2012-06-29 08:13
本发明专利技术公开一种客户端升级方法和系统,在大量用户同时在线升级的场景下,也能得到较快的升级速度。本发明专利技术实施例提供的一种客户端升级方法包括:在当前升级任务启动后,获取服务器根据客户端信息和升级策略下发的升级文件列表,该升级文件列表中指示所支持的升级组件,其中,当升级文件列表中指示的升级组件对应于已存在的客户端组件时,该升级组件仅包含与该客户端组件更新部分相关联的增量组件;根据升级文件列表生成下载文件列表,并执行下载文件列表中的下载任务,得到下载文件;利用下载文件对客户端组件进行更新,完成当前升级任务。

【技术实现步骤摘要】

本专利技术涉及客户端开发
,特别涉及一种客户端升级方法和系统。技术背景客户端(Client)是指与网络服务器相对应,与服务器互相配合为用户提供本地服务的软件。在终端设备上运行的客户端,包括基本的操作系统软件和各种应用软件,能够保证终端设备的运行,并向用户提供多种网络服务,如网页浏览、邮件收发和即时通信等。由于通信技术的飞速发展,不断会推出新的操作系统和应用软件,客户端也需要不断地进行升级。现有方案中,当客户端需要升级时,通常是采用单个文件包分别下载的方式,从服务器下载更新后的软件。现有的客户端升级方案至少具有如下缺点随着网络规模的不断扩展,网络中的用户数量越来越大,甚至能够达到亿级,当大量用户同时升级时,往往会造成网络阻塞,升级速度较慢,然而现有方案还未提出有效的解决方案,并且,现有方案仅支持单个文件包的下载,而文件包中通常不但包括更新后的数据还包括与升级无关的已有数据,造成了网络资源的浪费,也影响了升级的速度。
技术实现思路
本专利技术提供的一种客户端升级方法和系统,能够在大量用户同时在线升级的场景下,也能得到较快的升级速度。为达到上述目的,本专利技术实施例采用了如下技术方案本专利技术实施例提供了一种客户端升级方法,该方法包括当前升级任务启动后,获取服务器根据客户端信息和升级策略下发的升级文件列表,所述升级文件列表中指示所支持的升级组件,其中,当升级文件列表中指示的升级组件对应于已存在的客户端组件时,所述升级组件仅包含与该客户端组件更新部分相关联的增量组件;根据所述升级文件列表生成下载文件列表,并执行下载文件列表中的下载任务, 得到下载文件;利用所述下载文件对客户端组件进行更新,完成当前升级任务。本专利技术实施例还提供了一种客户端升级系统,该系统包括服务器和运行在客户端的升级装置,所述服务器,用于根据客户端信息和升级策略下发的升级文件列表,所述升级文件列表中指示所支持的升级组件,其中,当升级文件列表中指示的升级组件对应于已存在的客户端组件时,所述升级组件仅包含与该客户端组件更新部分相关联的增量组件;所述升级装置,用于在当前升级任务启动后,获取服务器根据客户端信息和升级策略下发的升级文件列表,所述升级文件列表中指示所支持的升级组件,其中,当升级文件列表中指示的升级组件对应于已存在的客户端组件时,所述升级组件仅包含与该客户端组件更新部分相关联的增量组件;根据所述升级文件列表生成下载文件列表,并执行下载文件列表中的下载任务,得到下载文件;利用所述下载文件对客户端组件进行更新,完成当前升级任务。本专利技术实施例的有益效果是本专利技术实施例通过在多个服务器上部署升级策略,为不同客户端下发不同的升级文件列表,不但提高了升级方式的灵活性,而且,通过对升级资源的合理控制,在大量用户同时在线升级的场景下,也能得到较快的升级速度。并且,本方案支持增量升级的方式,能够仅下载并安装与发生更新部分相关联的增量组件,避免了对与升级无关数据的重复处理,进一步提高了网络资源的利用率和升级速度。附图说明图1为本专利技术实施例一提供的一种客户端升级方法流程图2为本专利技术实施例一提供的一种客户端下载方法流程图3为本专利技术实施例一提供的一种客户端更新方法流程图4为本专利技术实施例二提供的一种升级装置的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。参见图1,为本专利技术实施例提供的一种客户端升级方法,其特征在于,所述方法包括在客户端侧执行的如下步骤11至14 :11):当前升级任务启动。升级任务可以在每次客户端开始运行时自动启动。例如,当用户登录即时通信 (IM)客户端,IM客户端开始运行时,IM客户端中的升级任务启动。本方案中可以设置升级任务队列,记录客户端中的所有升级任务。当一个新的升级任务启动时,将该升级任务加入升级任务队列中,并生成唯一性标识该升级任务的任务标识(ID)。在升级任务的执行过程中,升级任务队列对客户端中所有升级任务的执行进度进行记录。当在升级任务的执行过程中发生中断时,记录中断发生点,并在下一次执行过程中,从该中断发生点执行所述升级任务。12)获取服务器根据客户端信息和升级策略下发的升级文件列表,所述升级文件列表中指示所支持的升级组件,其中,当升级文件列表中指示的升级组件对应于已存在的客户端组件时,所述升级组件仅包含与该客户端组件更新部分相关联的增量组件。上述升级策略能够指示服务器升级策略的服务范围、升级模式、向不同客户端所能提供的升级组件等。服务器根据客户端的信息,与升级策略中的规则相匹配,得到针对该客户端的升级文件列表,下发至客户端。上述客户端信息包含客户端地址(IP)信息、客户端版本(clientver)信息、客户端用户(sid)信息和客户端通信号码(mobileno)中的至少一个。例如,当服务器根据mobileno,如手机号码,与升级策略中的手机号码段相匹配, 发现该手机号码不属于所支持的手机号码段内,则为客户端生成的升级文件列表中指示的升级组件为空,或者,不再为客户端生成的升级文件列表,而直接告知客户端不能升级。在客户端设置有客户端版本号,在服务器一侧,设置有升级版本号,初始的升级版本号与初始的客户端版本号相同,当服务器上发生组件更新时,更新服务器的升级版本号, 相应的,当更新后的组件在客户端上全部升级完成后,更新客户端版本号,以保持客户端版本和服务器版本的一致。服务器返回的升级文件列表采用可扩展标记语言(Extensible MarkupLanguage, XML)数据基本格式。升级文件列表中可以包含系统组件部分、其他组件部分和新产品推荐部分,系统组件部分包含了与客户端核心组件相关的升级组件,其他组件部分主要包含与客户端功能组件相关的升级组件,而新产品推荐部分可以为一个可选项,向用户推荐新的产品。优选的,服务器通常会对升级组件进行压缩后发送至客户端。应当注意的是,服务器在设置升级组件时,能够以增量组件的方式实现该升级组件。服务器对原始的升级文件进行分析,提取出与更新部分关联的组件,以及与该组件具有相互依赖(cbpendency)的组件,生成增量组件,客户端仅下载该增量组件,从而避免了客户端下载与升级无关的已有数据,提高资源利用率和升级速度。进一步的,本方案至少支持如下三种升级模式强制模式该模式下要求客户端必须对指定的组件进行升级,对指定组件的下载不再需要用户的选择指令,但一般情况下也会在下载和安装该组件时提示用户。当服务器根据所述客户端信息和升级策略,确认当前处于强制模式下且第一升级组件为该客户端的必选组件时,客户端获取到的所述升级文件列表中包含第一升级组件, 客户端根据所述升级文件列表生成的下载文件列表中也包含第一升级组件;静默模式该模式下,对组件的下载不提示用户,在安装该组件时可以提示并询问用户。当服务器根据所述客户端信息和升级策略,确认当前处于静默模式下时,客户端根据所获取的升级文件列表和客户端版本信息生成相应的下载文件列表,自动执行下载文件列表中的下载任务。这种方式下,不需要与用户交互,下载文件列表的生成也不需接收用户的指令。交互模式该模式下,在组件下载和安装时都提示并询问用户,与用户交互。当服务器根据所述客户端信息和升级策略,确认当前处于交互模式下时本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:郝永建李少华杨挺方顺豹
申请(专利权)人:北京新媒传信科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术