CN105302601A - 软件升级服务器的系统及方法 - Google Patents
软件升级服务器的系统及方法 Download PDFInfo
- Publication number
- CN105302601A CN105302601A CN201510690202.8A CN201510690202A CN105302601A CN 105302601 A CN105302601 A CN 105302601A CN 201510690202 A CN201510690202 A CN 201510690202A CN 105302601 A CN105302601 A CN 105302601A
- Authority
- CN
- China
- Prior art keywords
- software
- file
- upgrade
- service end
- customer side
- 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.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及服务器升级。本发明提供一种软件升级服务器的系统,包括服务端及客服端,客服端用于发送升级请求信息,升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;所述服务端用于存储软件新版文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;使用时,客服端通过HTTP协议向服务端发送升级请求信息,系统根据标识名称找到服务端对应软件的新版本文件,根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则触发升级,服务端下发升级文件至客服端,客服端进行升级;若软件新版本不高于当前软件版本,则无需升级。适用于软件升级服务器的实现方法。
Description
技术领域
本发明涉及服务器升级,特别涉及软件升级服务器的实现方法。
背景技术
传统软件升级服务器实现时,对软件升级的触发判断不是很灵活,通常是预先把需要判断触发的相关字段存入数据库中,比如存储软件版本,硬件版本,操作系统版本等。升级时判断硬件版本等一致,服务器上的软件版本比客服端上的软件版本新就触发升级。
当需要在服务器上部署一款另外类别的软件用于升级时,该软件在升级触发上有更多的字段需要判断,这时候需要修改服务器,增加判断字段来满足新的需求。虽然少数升级服务器的实现可以灵活增加字段,但实现方法复杂,不是很容易实现和使用。
发明内容
本发明所要解决的技术问题,就是提供一种软件升级服务器的系统及方法以实现对服务器上不同类型软件的升级。
本发明解决所述技术问题,采用的技术方案是,软件升级服务器的系统,包括服务端及客服端,所述服务端与客服端之间通过HTTP协议建立通信连接:
所述客服端用于发送升级请求信息,所述升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;
所述服务端用于存储软件新版文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;
使用时,客服端通过HTTP协议向服务端发送升级请求信息,系统根据标识名称找到服务端对应软件的新版本文件,根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则触发升级,服务端下发升级文件至客服端,客服端进行升级;若软件新版本不高于当前软件版本,则无需升级。
具体的,所述标识名称在请求的URL地址PATH部分指定。
具体的,所述软件新版本信息文件为JSON文件。
具体的,所述比较规则通过javascript语言编写,并保存在js文件中。
具体的,所述升级请求信息还包括客服端软件运行环境信息,所述运行环境信息至少包括MAC地址及硬件ID。
软件升级服务器的方法,包括以下步骤:
步骤1、客服端发送升级请求至服务端,所述升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;
步骤2、服务端根据标识名称找到对应软件的新版本文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;
步骤3、服务端根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则进入步骤4,否则无需升级;
步骤4、服务端下发升级文件至客服端,客服端进行升级。
具体的,所述步骤1中,标识名称在请求的URL地址PATH部分指定。
具体的,所述步骤2中,软件新版本信息文件为JSON文件。
具体的,所述步骤2中,比较规则通过javascript语言编写,并保存在js文件中。
具体的,所述步骤1中,升级请求信息还包括客服端软件运行环境信息,所述运行环境信息至少包括MAC地址及硬件ID。
本发明的有益效果是:服务端部署一个软件的新版本时包括升级文件、软件新版本信息文件及比较规则,这三个部分都可以定制和更改,大大增加了灵活性。当需要重新部署一个其他类别软件时,服务器也可以快速修改实现;升级时只需要根据比较规则将版本信息进行比较,从而判断是否触发升级,无需改变升级策略,仅仅改变软件版本的场景。便可以实现不同类型软件的升级。
附图说明
图1为本发明软件升级服务器的系统及方法实施例中是否触发升级的比较过程。
以下结合实施例的具体实施方式,对本发明的上述内容再作进一步的详细说明。但不应将此理解为本发明上述主题的范围仅限于以下的实例。在不脱离本发明上述技术思想情况下,根据本领域普通技术知识和惯用手段做出的各种替换或变更,均应包括在本发明的范围内。
具体实施方式
下面结合附图及实施例详细描述本发明的技术方案:
本发明针对现有技术中服务器不能快速实现不同类别软件的升级问题,提供一种软件升级服务器的系统,包括服务端及客服端,所述服务端与客服端之间通过HTTP协议建立通信连接,所述客服端用于发送升级请求信息,所述升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;所述服务端用于存储软件新版文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;使用时,客服端通过HTTP协议向服务端发送升级请求信息,系统根据标识名称找到服务端对应软件的新版本文件,根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则触发升级,服务端下发升级文件至客服端,客服端进行升级;若软件新版本不高于当前软件版本,则无需升级。软件升级服务器的方法,首先,客服端发送升级请求至服务端,所述升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;其次,服务端根据标识名称找到对应软件的新版本文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;然后,服务端根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,服务端下发升级文件至客服端,客服端进行升级,否则无需升级;服务端部署一个软件的新版本时包括升级文件、软件新版本信息文件及比较规则,这三个部分都可以定制和更改,大大增加了灵活性。当需要重新部署一个其他类别软件时,服务器也可以快速修改实现;升级时只需要根据比较规则将版本信息进行比较,从而判断是否触发升级,无需改变升级策略,仅仅改变软件版本的场景。便可以实现不同类型软件的升级。
实施例1
本例中服务端使用HTTP协议来传输,客服端通过HTTP请求来判读升级是否触发和下载升级文件。服务端中任意软件都设置有不同的标示名称,同一软件不同版本名称相同,不同软件其标示名称不同,用于服务端区分不同的软件。也可以通过ID来实现软件标示,亦或是其他标示方式。所述标识名称存储与软件新版本文件中,所述新版本文件还包括升级文件、软件新版本信息文件及比较规则。其中,软件新版本信息为JSON(JavaScriptObjectNotation)文件,比较规则是用javascript编写的一个比较方法,保存在js文件中。该方法接收2个JSON信息对应的js对象作为参数,一个参数是旧版本的JSON信息,一个参数是新版本的JSON信息,JSON信息中需要包含软件版本。
客服端通过HTTP协议向服务端发送升级请求信息,请求信息中至少包括当前软件版本信息及标识名称,所述标志名称与服务端中的软件的标识名称一一对应。请求信息中还可以包括客服端软件运行环境等信息,比如MAC地址,硬件ID等。
服务端接收到升级请求信息后,根据标识名称找到服务端对应软件的新版本文件,根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则触发升级;若软件新版本不高于当前软件版本,则无需升级。其中,服务端必须能够解释执行javascript,比如使用node.js写的服务器,便于执行上文中提到的用javascript编写的比较方法,或者使用其他javascript解释器执行。
触发升级后,系统返回软件新版本的JSON信息,该信息包含升级文件URL地址等,客服端就可以下载新的升级文件进行升级。
当服务端一个软件存在多个版本时,可以把比终端软件版本大的各个版本从小到大逐个比较,比较判为触发就返回,没触发就继续比较新版本。或者采用其他策略来选择升级的版本。
实施例2
本例以一种数字电视软件升级后在不同的两个区域分裂成两个软件的方案为例,进一步描述本发明。
(1).首先使用node.js编写http服务器;便于在服务端执行javascript脚本。
(2).当服务器第一次部署数字电视升级,确定一个软件的标识名称,用该标识名称在服务器创建一个目录,再在该目录下以版本号创建一个子目录。把升级文件包放到版本子目录里,把升级信息描述文件info.JSON也放到该子目录,把比较方法cmp写成js文件,定为cmp.js也存放在该目录。
(3).使用数据库记录软件信息,包括软件表示名称,版本,JSON信息存放目录,js存放目录,升级文件存放目录。更新记录。
(4).服务端在收到检测触发的请求时,根据软件标示名称和版本从数据库中找到较新的软件信息,没找到就返回不触发升级,找到就执行cmp,js中比较方法cmp进行判断,返回ture时,把新的软件信息也返回到客服端,客服端从新的软件信息中获取升级文件地址,并请求升级文件进行升级,升级完成后更新客服端的软件信息。具体比较方法如图1所示,该图是一个软件检测升级触发的一个过程,客服端C向服务器S发起一个请求,请求告诉服务器客服端的软件和环境信息info,客服端版本V1,服务器收到请求,根据软件名称表示,找到一个软件版本V2,调用比较方法CMP对V1版本和V2版本信息进行比较;比较结果为true,则进入下一步的升级,为false则不进行升级。
(5).数字电视软件可以从传输流中获取区域编号,把区域编号加到info.JSON中进行请求触发,服务端的cmp比较方法可以指定哪些区域编号进行升级,这些指定区域升级后的软件标示名也更改为另外一个分支名称,下次这部分区域的分支升级时,需要在新的分支名称中放置升级文件。
(6).如果旧版本的数字电视软件不会去获取区域编码上传,需要先升级一次软件,这个先升级这个软件会去获取区域编号,不然服务端拿不到区域信息,则不能分区域升级。
Claims (10)
1.软件升级服务器的系统,包括服务端及客服端,所述服务端与客服端之间通过HTTP协议建立通信连接,其特征在于:
所述客服端用于发送升级请求信息,所述升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;
所述服务端用于存储软件新版文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;
使用时,客服端通过HTTP协议向服务端发送升级请求信息,系统根据标识名称找到服务端对应软件的新版本文件,根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则触发升级,服务端下发升级文件至客服端,客服端进行升级;若软件新版本不高于当前软件版本,则无需升级。
2.根据权利要求1所述的软件升级服务器的系统,其特征在于,所述标识名称在请求的URL地址PATH部分指定。
3.根据权利要求1所述的软件升级服务器的系统,其特征在于,所述软件新版本信息文件为JSON文件。
4.根据权利要求1所述的软件升级服务器的系统,其特征在于,所述比较规则通过javascript语言编写,并保存在js文件中。
5.根据权利要求1所述的软件升级服务器的系统,其特征在于,所述升级请求信息还包括客服端软件运行环境信息,所述运行环境信息至少包括MAC地址及硬件ID。
6.软件升级服务器的方法,其特征在于,包括以下步骤:
步骤1、客服端发送升级请求至服务端,所述升级请求信息至少包括当前软件版本信息及标识名称,所述标志名称与软件名称一一对应;
步骤2、服务端根据标识名称找到对应软件的新版本文件,所述新版本文件至少包括升级文件、软件新版本信息文件及比较规则;
步骤3、服务端根据比较规则将当前软件版本信息与软件新版本信息进行比较,若软件新版本高于当前软件版本,则进入步骤4,否则无需升级;
步骤4、服务端下发升级文件至客服端,客服端进行升级。
7.根据权利要求6所述的软件升级服务器的方法,其特征在于,所述步骤1中,标识名称在请求的URL地址PATH部分指定。
8.根据权利要求6所述的软件升级服务器的方法,其特征在于,所述步骤2中,软件新版本信息文件为JSON文件。
9.根据权利要求6所述的软件升级服务器的方法,其特征在于,所述步骤2中,比较规则通过javascript语言编写,并保存在js文件中。
10.根据权利要求6所述的软件升级服务器的方法,其特征在于,所述步骤1中,升级请求信息还包括客服端软件运行环境信息,所述运行环境信息至少包括MAC地址及硬件ID。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510690202.8A CN105302601A (zh) | 2015-10-22 | 2015-10-22 | 软件升级服务器的系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510690202.8A CN105302601A (zh) | 2015-10-22 | 2015-10-22 | 软件升级服务器的系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105302601A true CN105302601A (zh) | 2016-02-03 |
Family
ID=55199896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510690202.8A Pending CN105302601A (zh) | 2015-10-22 | 2015-10-22 | 软件升级服务器的系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105302601A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105740026A (zh) * | 2016-03-01 | 2016-07-06 | 深圳市茁壮网络股份有限公司 | 一种tv端更新应用的方法 |
CN108011935A (zh) * | 2017-11-27 | 2018-05-08 | 海信集团有限公司 | 一种nb-iot设备的程序升级方法、服务器及nb-iot设备 |
CN108345472A (zh) * | 2017-01-22 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 血糖仪数据处理的方法和装置、血糖仪 |
CN108471361A (zh) * | 2018-03-28 | 2018-08-31 | 新华三技术有限公司 | 一种版本升级方法及装置 |
CN108804321A (zh) * | 2018-05-25 | 2018-11-13 | 武汉华工正源光子技术有限公司 | 一种自动化测试软件更新系统及方法 |
CN109032886A (zh) * | 2018-06-21 | 2018-12-18 | 携程旅游网络技术(上海)有限公司 | Json报文比对方法及系统 |
CN110442361A (zh) * | 2019-06-27 | 2019-11-12 | 五八有限公司 | 一种灰度发布方法、装置及电子设备 |
CN111273924A (zh) * | 2020-01-10 | 2020-06-12 | 杭州迪普科技股份有限公司 | 软件更新方法及装置 |
CN111984279A (zh) * | 2020-09-03 | 2020-11-24 | 深圳创维-Rgb电子有限公司 | 一种应用软件升级方法、系统及存储介质 |
CN112764792A (zh) * | 2021-01-27 | 2021-05-07 | 上海淇玥信息技术有限公司 | 一种关联服务器版本应用升级方法、装置和电子设备 |
CN113157291A (zh) * | 2021-05-21 | 2021-07-23 | 上海交通大学 | 一种基于云存储的生物分析软件管理方法及系统 |
CN113329044A (zh) * | 2020-02-28 | 2021-08-31 | 北京京东振世信息技术有限公司 | 一种监控代理程序的升级方法和升级装置 |
CN113656065A (zh) * | 2021-08-11 | 2021-11-16 | 杭州安恒信息技术股份有限公司 | 软件版本监测方法、系统、计算机及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777317A (zh) * | 2005-12-16 | 2006-05-24 | 北京金山软件有限公司 | 一种实现无线终端程序更新的方法 |
CN102056025A (zh) * | 2009-10-30 | 2011-05-11 | 深圳Tcl新技术有限公司 | Iptv模块的升级方法 |
CN103312786A (zh) * | 2013-05-17 | 2013-09-18 | 广州市雄兵汽车电器有限公司 | 车载终端远程升级方法及车联网系统 |
CN103309694A (zh) * | 2012-03-14 | 2013-09-18 | 腾讯科技(深圳)有限公司 | 应用程序更新方法和装置 |
CN103701856A (zh) * | 2013-11-29 | 2014-04-02 | 四川长虹电器股份有限公司 | 一种定义及终端设备获取升级包的方法 |
-
2015
- 2015-10-22 CN CN201510690202.8A patent/CN105302601A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777317A (zh) * | 2005-12-16 | 2006-05-24 | 北京金山软件有限公司 | 一种实现无线终端程序更新的方法 |
CN102056025A (zh) * | 2009-10-30 | 2011-05-11 | 深圳Tcl新技术有限公司 | Iptv模块的升级方法 |
CN103309694A (zh) * | 2012-03-14 | 2013-09-18 | 腾讯科技(深圳)有限公司 | 应用程序更新方法和装置 |
CN103312786A (zh) * | 2013-05-17 | 2013-09-18 | 广州市雄兵汽车电器有限公司 | 车载终端远程升级方法及车联网系统 |
CN103701856A (zh) * | 2013-11-29 | 2014-04-02 | 四川长虹电器股份有限公司 | 一种定义及终端设备获取升级包的方法 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105740026A (zh) * | 2016-03-01 | 2016-07-06 | 深圳市茁壮网络股份有限公司 | 一种tv端更新应用的方法 |
CN108345472A (zh) * | 2017-01-22 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 血糖仪数据处理的方法和装置、血糖仪 |
CN108011935A (zh) * | 2017-11-27 | 2018-05-08 | 海信集团有限公司 | 一种nb-iot设备的程序升级方法、服务器及nb-iot设备 |
CN108471361B (zh) * | 2018-03-28 | 2021-08-24 | 新华三技术有限公司 | 一种版本升级方法及装置 |
CN108471361A (zh) * | 2018-03-28 | 2018-08-31 | 新华三技术有限公司 | 一种版本升级方法及装置 |
CN108804321A (zh) * | 2018-05-25 | 2018-11-13 | 武汉华工正源光子技术有限公司 | 一种自动化测试软件更新系统及方法 |
CN109032886A (zh) * | 2018-06-21 | 2018-12-18 | 携程旅游网络技术(上海)有限公司 | Json报文比对方法及系统 |
CN110442361A (zh) * | 2019-06-27 | 2019-11-12 | 五八有限公司 | 一种灰度发布方法、装置及电子设备 |
CN110442361B (zh) * | 2019-06-27 | 2024-02-09 | 五八有限公司 | 一种灰度发布方法、装置及电子设备 |
CN111273924A (zh) * | 2020-01-10 | 2020-06-12 | 杭州迪普科技股份有限公司 | 软件更新方法及装置 |
CN113329044A (zh) * | 2020-02-28 | 2021-08-31 | 北京京东振世信息技术有限公司 | 一种监控代理程序的升级方法和升级装置 |
CN111984279A (zh) * | 2020-09-03 | 2020-11-24 | 深圳创维-Rgb电子有限公司 | 一种应用软件升级方法、系统及存储介质 |
CN112764792A (zh) * | 2021-01-27 | 2021-05-07 | 上海淇玥信息技术有限公司 | 一种关联服务器版本应用升级方法、装置和电子设备 |
CN112764792B (zh) * | 2021-01-27 | 2023-08-29 | 上海淇玥信息技术有限公司 | 一种关联服务器版本应用升级方法、装置和电子设备 |
CN113157291A (zh) * | 2021-05-21 | 2021-07-23 | 上海交通大学 | 一种基于云存储的生物分析软件管理方法及系统 |
CN113157291B (zh) * | 2021-05-21 | 2024-04-02 | 上海交通大学 | 一种基于云存储的生物分析软件管理方法及系统 |
CN113656065A (zh) * | 2021-08-11 | 2021-11-16 | 杭州安恒信息技术股份有限公司 | 软件版本监测方法、系统、计算机及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105302601A (zh) | 软件升级服务器的系统及方法 | |
CN106815276B (zh) | 页面跳转方法及装置 | |
CN102694861B (zh) | 一种基于云技术的终端应用软件分类方法、装置及系统 | |
CN103064663B (zh) | 浏览器插件的生成、发布、加载和更新方法以及系统 | |
EP2919440B1 (en) | Advertisement processing method and device | |
CN105812435B (zh) | 应用升级数据包处理方法、装置、电子设备及系统 | |
CN106598673B (zh) | 一种应用程序升级方法及系统 | |
CN104850301A (zh) | 一种在系统桌面上将应用程序图标分类的方法和系统 | |
CN102480501A (zh) | 应用资源下载方法及相关设备 | |
CN102833350A (zh) | WebApp更新的处理方法和处理装置 | |
CN104079673A (zh) | 一种应用下载中防止dns劫持的方法、装置和系统 | |
CN106775816B (zh) | 一种局域网中应用程序的自动更新方法及系统 | |
CN102355500A (zh) | 业务推送方法和装置 | |
CN103442026A (zh) | 一种应用程序处理方法、装置和系统 | |
US20130152069A1 (en) | Method, apparatus and system for initiating terminal operation | |
CN103414765A (zh) | 图形码中信息的分流方法、装置及系统 | |
CN106325879A (zh) | 一种驱动程序的安装方法及装置、电子设备 | |
CN103916846A (zh) | 一种终端应用的更新方法、系统及设备 | |
CN103164247A (zh) | 系统应用自动修复的方法及装置 | |
CN108540509A (zh) | 一种终端浏览器的处理方法、装置及服务器、智能终端 | |
CN105760183A (zh) | 文件处理方法、装置及通信系统 | |
CN110990025B (zh) | 一种实例部署方法及系统 | |
CN107526584B (zh) | 数据接入方法和装置 | |
CN104702980A (zh) | 一种epg数据处理方法、epg服务器及epg数据处理系统 | |
CN111176706A (zh) | 终端升级方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160203 |
|
RJ01 | Rejection of invention patent application after publication |