一种售货机app系统升级处理方法技术方案

技术编号:37162353 阅读:13 留言:0更新日期:2023-04-06 22:28
本发明专利技术公开了一种售货机app系统升级处理方法,通过伪随机数算法,生成等待随机数,将等待随机数作为售货机系统更新请求的延迟倒计时参数,进而分散售货机系统的更新请求,能够降低请求并发的概率,提升服务器系统的稳定性。通过根据服务器i/o端口的使用率,对更新请求进行排队处理,可以用尽量少的服务器资源,保证服务器系统的稳定性,降低资源成本,为用户提供更优质的体验。户提供更优质的体验。户提供更优质的体验。

【技术实现步骤摘要】
一种售货机app系统升级处理方法


[0001]本专利技术涉及自动售货机领域,尤其涉及一种售货机app系统升级处理方法。

技术介绍

[0002]自助售货机,主要是设置在一些公共场所(如一些大型商场、学校、医院等),用于销售一些饮料,食品,或者一些医疗耗材与药品等。当售货机的系统存在缺陷时,就需要对售货机系统进行升级更新,售货机系统升级,主要包括步骤:1、新版本检测。检测售货机型号,是否有最新版本;2、下载新版本。如果有最新版本,则app系统,通过下载最新的安装包;3升级更新,app系统,自动启用最新的app安装包,完成系统的更新升级。
[0003]目前,在售货机系统升级中,主要存在以下问题:1、容易触发并发,形成服务器请求瓶颈。不管是服务器发命令、或者是售货机系统定时触发更新,在不做任何处理的情况,会导致所有的售货机系统在一段时间内,同时形成并发请求,向服务器请求更新资源,会使用服务器在短时间消耗所有资源,导致系统假死或者宕机,影响客户体验。
[0004]2、服务器消耗大。有些时候,为了解决系统假死问题,需要通过横向扩展,增加服务器的方式。在不更新的时候,采用少量的服务器资源就能实现,这样导致了资源浪费。
[0005]3、并发请求安装文件,占用服务器的i/o资源,易导致系统宕机。

技术实现思路

[0006]本专利技术的目的在于减少售货机系统更新请求并发的问题,充分利用服务器资源,现提供一种售货机app系统升级处理方法。
[0007]本专利技术通过如下技术方案实现:一种售货机app系统升级处理方法,包括如下步骤:S101、接收系统更新指令;S102、生成等待随机数;S103、将等待随机数作为倒计时的计数值,执行倒计时程序;S104、判断倒计时的计数值是否为零,若是,则执行步骤S105,否则,继续执行步骤S103;S105、向服务器发送系统更新请求;S106、接收服务器的返回值;S107、根据返回值判断是否需要更新,若不需要更新,则恢复售货机正常工作状态,若需要更新,则判断是否需要等待时间,若不需要等待时间,则系统启动下载程序,若需要等待时间,则启动定时器,并根据等待时间进入新一轮的倒计时;S108、判断是否可以进行更新,若售货机处于订单进行状态,则暂停更新,待售货机退出售货界面后,再进行更新,若售货机处于待机状态,则可以进行更新,售货机系统进入锁屏更新界面,执行系统更新程序;
S109、发送更新完成的反馈信息给服务器。
[0008]进一步的,所述步骤S101接收系统更新指令包括以下方式:方式一、接收手动触发的更新指令,方式二、通过售货机的内置定时器,定时到期后触发的更新指令。
[0009]进一步的,所述步骤S102生成等待随机数的方法如下:在java中,通过伪随机算法,用java.util.Random中的类,执行nextInt(int n)方法在本地产生一个1到60之间的随机数,将该随机数作为倒计时的计数值,形成倒计时的计数值后,进入倒计时程序。
[0010]进一步的,所述步骤S103中执行倒计时程序的方法为:每隔一分钟,执行一次,将倒计时的计数值减1,若计时器的倒计时的计数值为0,则进入售货机更新程序。
[0011]进一步的,所述步骤S106中服务器的返回值的返回方法是:服务器判断对应的售货机系统,是否有最新版本,如果没有,则返回不需要更新的返回值,如果有最新版本,则根据服务器i/o端口的使用率,判断请求是否被允许,如果允许,则建立最新版本的系统下载链接供售货机进行下载,如果不允许,则返回等待更新的返回值,并根据前面m台售货机系统下载的完成耗时,通过m点移动加权平均计算得出所需的等待时间,发送给售货机计时器,进入等待更新的倒计时。
[0012]进一步的,所述根据服务器i/o端口的使用率,判断请求是否被允许的方法为:计算服务器的i/o端口的使用率,若使用率大于等于预设值,则返回等待更新的返回值并计算等待时间,若使用率小于预设值,则允许更新请求。
[0013]进一步的,所述通过m点移动加权平均计算的方法为:根据最近的m台机器的更新处理时长,通过移动加权平均方法计算当前售货机的等待时间,所用公式如下:L=(w1*a1+w2*a2+w3*a3+
……
+wm*am)/m;式中,L为等待时间,m为当前售货机在队列中的序号,w1到wm为最近m台机器的更新处理时长,a1到am为权重参数。
[0014]进一步的,所述更新处理时长具体为售货机系统的更新结束时间与更新开始时间的差值。
[0015]与现有技术相比,本专利技术的优点在于:1、通过伪随机算法生成随机数,分散更新定时请求,能够降低请求并发的概率,提升服务器系统的稳定性。
[0016]2、通过根据服务器i/o端口的使用率,对更新请求进行排队处理,可以用尽量少的服务器资源,保证服务器系统的稳定性,降低资源成本,为用户提供更优质的体验。
附图说明
[0017]图1为本专利技术的售货机系统更新流程示意图。
具体实施方式
[0018]为使本专利技术的目的、技术方案和优点更加的清楚明白,以下结合具体实施例,并参照附图,对本专利技术所述的一种售货机app系统升级处理方法,进一步的详细说明,显然,所描述的实施例只是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0019]下面结合附图对本专利技术进行进一步说明。
[0020]参考图1所示,一种售货机app系统升级处理方法,包括以下步骤:接收系统更新指令,售货机系统接收更新命令,或者定时器检测到指定时间触发更新指令。
[0021]生成倒计时随机数,通过伪随机算法,在java中,用java.util.Random中的类,通过nextInt(int n)方法在本地产生一个1到60之间的随机数,将该随机数作为倒计时的计数值。形成倒计时的计数值后,进入倒计时程序,在倒计时程序中,每隔一分钟,执行一次,并将倒计时计数值减1,直到倒计时计数值为0后,进入售货机更新程序。
[0022]在售货机更新程序中,由售货机向服务器发出更新请求。对于售货机的更新请求,服务器将进行排队处理。首先,判断对应的售货机系统,是否有最新版本。如果没有,则返回不需要更新的返回值(其中,返回值为售货机可识别的二进制参数)。如果有最新版本,则计算并判断服务器i/o端口的使用率,若服务器i/o端口的使用率小于预设值(本实施例中,服务器i/o端口的使用率的预设值取值为85%),则允许更新请求,若服务器i/o端口的使用率大于等于预设值,则返回等待更新的返回值,并根据目前排队情况,以及前面m台售货机系统下载完成的耗时,通过m点移动加权平均方法计算当前售货机的等待时间,所用公式如下:L=(w1*a1+w2*a2+w3*a3+
……
+wm*am)/m;式中,L为等待时间,m为当前售货机在队列中的序号,w1到wm为最近m台机器的更新处本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种售货机app系统升级处理方法,其特征在于,包括如下步骤:S101、接收系统更新指令;S102、生成等待随机数;S103、将等待随机数作为倒计时的计数值,执行倒计时程序;S104、判断倒计时的计数值是否为零,若是,则执行步骤S105,否则,继续执行步骤S103;S105、向服务器发送系统更新请求;S106、接收服务器的返回值;S107、根据返回值判断是否需要更新,若不需要更新,则恢复售货机正常工作状态,若需要更新,则判断是否需要等待时间,若不需要等待时间,则系统启动下载程序,若需要等待时间,则启动定时器,并根据等待时间进入新一轮的倒计时;S108、判断是否可以进行更新,若售货机处于订单进行状态,则暂停更新,待售货机退出售货界面后,再进行更新,若售货机处于待机状态,则可以进行更新,售货机系统进入锁屏更新界面,执行系统更新程序;S109、发送更新完成的反馈信息给服务器。2.根据权利要求1所述的一种售货机app系统升级处理方法,其特征在于,所述步骤S101接收系统更新指令包括以下方式:方式一、接收手动触发的更新指令,方式二、接收售货机的内置定时器,定时到期后触发的更新指令。3.根据权利要求1所述的一种售货机app系统升级处理方法,其特征在于,所述步骤S102生成等待随机数的方法如下:在java中,通过伪随机算法,用java.util.Random中的类,执行nextInt(int n)方法在本地产生一个1到60之间的随机数,将该随机数作为倒计时的计数值,形成倒计时的计数值后,进入倒计时程序。4.根据权利要求1所述的一种售货机app系统升级处理方法,其特征在于,所述步骤S103中执行倒计时程序的方...

【专利技术属性】
技术研发人员:廖平丁胜财
申请(专利权)人:赣州师范高等专科学校
类型:发明
国别省市:

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

1