一种数据的更新方法、装置、电子设备及可读介质与流程

文档序号:17130078发布日期:2019-03-16 01:04阅读:137来源:国知局
一种数据的更新方法、装置、电子设备及可读介质与流程

本公开实施例涉及计算机技术领域,尤其涉及一种数据的更新方法、装置、电子设备及可读介质。



背景技术:

随着各种智能终端的迅速发展,各种应用程序也层出不穷。应用程序版本,将直接觉得应用程序能否满足用户合适各样的需求,直接影响到用户的使用体验,因此,应用程序的更新尤为重要。

传统的应用程序更新的做法是每个开发人员确定自己的任务后,分别在自己的开发环境中开发,并在自己搭建的小流量环境中测试,最终测试成功后将更新数据发布到线上环境。现有技术中存在以下弊端:一,小流量环境的搭建需要耗费开发人员较长的时间;二,测试成功后上线如果存在问题,则应用程序必须停服来进行更新维护,影响用户的正常使用。



技术实现要素:

本公开实施例提供一种数据的更新方法、装置、电子设备及可读介质,可以简化开发人员的操作流程,并能够预先发现数据更新是否存在问题的效果。

第一方面,本公开实施例提供了一种数据的更新方法,该方法包括:

向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;

检测所述目标数据在所述预发环境中运行是否有问题;

若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。

进一步的,所述重新运行包括所述目标数据的预发环境之后,还包括:

若所述目标数据在所述预发环境中运行有问题,则为预发环境的用户提供切换至线上环境的方式,供预发环境的用户切换到线上环境;

报告所述目标数据的错误信息。

进一步的,若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上,包括:

若所述目标数据在所述预发环境中运行无问题,则在预设的时间节点,发送所述目标数据的上线请求,供用户进行上线反馈;

若接收到同意所述上线请求的反馈信息,则将所述目标数据同步到线上环境的主控分支上。

进一步的,所述检测所述目标数据在所述预发环境中运行是否有问题,包括:

控制接收有所述目标数据的预发分支进入封版期运行,其中所述封版期停止接收数据更新;

检测所述目标数据在处于封板期的预发环境中运行是否有问题。

进一步的,在向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境之前,所述方法还包括:

通过预先配置的浏览器代理访问预发环境。

第二方面,本公开实施例还提供了一种数据的更新装置,该装置包括:

目标数据发送模块,用于向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;

目标数据检测模块,用于检测所述目标数据在所述预发环境中运行是否有问题;

目标数据同步模块,用于若所述目标数据检测模块检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。

进一步的,所述装置还包括:

环境切换模块,用于若所述目标数据在所述预发环境中运行有问题,则为预发环境的用户提供切换至线上环境的方式,供预发环境的用户切换到线上环境;

错误信息报告模块,用于报告所述目标数据的错误信息。

进一步的,所述目标数据同步模块包括:

上线请求发送单元,用于若所述目标数据在所述预发环境中运行无问题,则在预设的时间节点,发送所述目标数据的上线请求,供用户进行上线反馈;

目标数据同步单元,用于若接收到同意所述上线请求的反馈信息,则将所述目标数据同步到线上环境的主控分支上。

进一步的,所述目标数据检测模块包括:

预发分支控制单元,用于控制接收有所述目标数据的预发分支进入封版期运行,其中所述封版期停止接收数据更新;

目标数据检测单元,用于检测所述目标数据在处于封板期的预发环境中运行是否有问题。

进一步的,所述装置还包括:

预发环境访问模块,用于通过预先配置的浏览器代理访问预发环境。

第三方面,本公开实施例提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本公开实施例所述的数据的更新方法。

第四方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开实施例所述的数据的更新方法。

本公开实施例所提供的技术方案,通过向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;检测所述目标数据在所述预发环境中运行是否有问题;若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。通过采用本公开所提供的技术方案,可以简化开发人员的操作流程,并能够预先发现数据更新是否存在问题的效果。

附图说明

图1是本公开实施例一提供的数据的更新方法的流程图;

图2是本公开实施例二提供的数据的更新装置的结构示意图;

图3是本公开实施例三提供的一种电子设备的结构示意图。

具体实施方式

下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分而非全部结构。

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

下述各实施例中,每个实施例中同时提供了可选特征和示例,实施例中记载的各个特征可进行组合,形成多个可选方案,不应将每个编号的实施例仅视为一个技术方案。

实施例一

图1是本公开实施例一提供的数据的更新方法的流程图,本实施例可适用数据更新的情况,该方法可以由本公开实施例所提供的数据的更新装置来执行,该装置可以由软件和/或硬件的方式来实现,并可集成于客户端、终端以及服务器等电子设备中。

如图1所示,所述数据的更新方法包括:

s110、向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同。

其中,预发环境可以是线上环境与开发环境的中间环境,预发环境与线上环境的数据源相同,所以预发环境上面的使用用户与线上环境的使用用户的数据是相同的,可以直接在预发环境实现线上操作。而预发环境中的预发分支又可以接收待更新的目标数据,这样就可以实现预发环境的实时更新。其中,目标数据可以是开发人员在开发环境中为了修复或者更新原有数据的功能,所提出的在原有数据上更新的数据,或者原有数据就不存在的功能数据。

本公开实施例提供了一种预发环境,以及在预发环境中运行的预发分支,与现有技术不同的是,现有技术中,工作人员如果需要对应用程序进行更新时往往需要构建一个小流量环境,而小流量环境的运行是与线上环境脱离的,在小流量环境中运行的目标数据虽然可以经过测试,但是没有办法保证在线上部署时任然能够运行无问题。另外一点是小流量环境的构建是要进行大量的代码编程的,无论是同一工作人员针对不同的应用程序,还是不同工作人员针对相同的应用程序,对小流量环境的构建都是相对复杂的,而且会有大量的重复代码出现,这就极大的降低了工作人员的工作效率。

在本技术方案中,可选的,在向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境之前,所述方法还包括:通过预先配置的浏览器代理访问预发环境。其中,在工作人员需要对预发环境的预发分支上的数据进行更新时,可以在提供目标数据进行上传的同时,对工作人员或者当前电子设备的权限进行验证,以确定工作人员或者当前电子设备是否具有预发分支的访问权限。如果不具有访问权限,则不接收目标数据。这样设置可以保证预发环境的数据更新的安全性。具体的,可以在网页的代理项目栏中输入正确的httpproxy(hypertexttransportprotocolproxy,超文本传输协议代理),以及相应的(port)端口之后,允许开发人员访问预发环境。

对于预发环境来说,除了开发人员能够访问之外,还可以由使用用户来在预发环境中使用。在有目标数据被更新到预发分支之后,需要重新运行接收目标数据的预发环境,这样才能够保证当前在预发环境中运行的预发分支是具有目标数据的预发分支。而且使用用户可以感知到预发分支所接收的目标数据所带来的功能的新增或者更新。在本技术方案中,预发环境的使用用户可以是根据从线上环境使用用户随机选择出来的,对于数量没有具体的要求,但是为了能够确保目标数据不会出现问题以及得到更多使用用户的反馈信息,可以把预发环境是使用用户控制在数十人甚至上百人。而且由于本方案中预发环境与线上环境的数据源相同,预发环境的使用用户不会受到任何限制,可以任意访问与线上环境相同的数据源。

s120、检测所述目标数据在所述预发环境中运行是否有问题。

其中,在预发环境中,可以根据用户的使用情况来确定是否存有问题,具体的,可以是根据用户的回馈信息以及接收应用程序在预发环境中运行的日志信息来确定应用程序是否出现不兼容、不合理以及死循环等问题。

在本技术方案中,可选的,所述检测所述目标数据在所述预发环境中运行是否有问题,包括:控制接收有所述目标数据的预发分支进入封版期运行,其中所述封版期停止接收数据更新;检测所述目标数据在处于封板期的预发环境中运行是否有问题。其中,封版期的开始时间和结束时间可以由工作人员手动设置,也可以设置相应的开始时间和结束时间的控制规则。封版期的设置可以确保所有的目标数据都是经过一定长时间的运行,确定目标数据无问题之后再上线。本技术方案这样设置的好处是可以确定目标数据的运行稳定性,避免将目标数据上线后,才发现存在一定的问题,再对主控分支进行bug的修复,影响线上用户的正常使用。在本技术方案中,优选的,可以在封版期内,不接收更多的目标数据,这样设置的好处是可以避免出现目标数据过多,导致运行出现问题后很难确定具体是哪一个目标数据所引起的运行错误。

s130、若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。

若在预发环境中检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。这样就可以实现目标数据的更新,本技术方案的效果是既能够确保应用程序的更新速度又能够保证数据更新质量。

本公开所提供的技术方案,能够在预发环境的预发分支上任意时刻接收待更新的目标数据,这样设置的好处是能够实现更加及时的对应用程序的更新进行响应,而且可以根据预发环境的使用用户的回馈信息以及使用情况来确定待更新的目标数据是否存在缺陷,提高了应用程序更新过程的灵活度。

可以理解的,本公开仅以对应用程序的更新为例进行数据的更新方法的说明,但并不限定对应用程序进行更新,对任意能够采用本公开所提供的数据更新的客体,都可以直接或者间接的使用本公开所提供的数据更新方法进行更新。

本公开实施例所提供的技术方案,通过向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;检测所述目标数据在所述预发环境中运行是否有问题;若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。通过采用本公开所提供的技术方案,可以简化开发人员的操作流程,并能够预先发现数据更新是否存在问题的效果。

在上述各技术方案的基础上,可选的,所述重新运行包括所述目标数据的预发环境之后,还包括:若所述目标数据在所述预发环境中运行有问题,则为预发环境的用户提供切换至线上环境的方式,供预发环境的用户切换到线上环境;报告所述目标数据的错误信息。其中,如果预发环境运行有问题,可以通过为预发环境的使用用户提供切换至线上环境的方式,来保证预发环境的使用用户不会因为环境出现bug而无法正常使用应用程序的情况。本技术方案这样设置的好处是可以提高在对目标数据进行预发环境的部署的同时,在运行有问题的情况下提供为预发环境用户切换至线上环境的使用方法,为预发环境用户提供了服务保障,提高了预发环境用户的使用体验。

实施例二

图2是本公开实施例二提供的数据的更新装置的结构示意图。如图2所示,所述数据的更新装置,包括:

目标数据发送模块210,用于向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;

目标数据检测模块220,用于检测所述目标数据在所述预发环境中运行是否有问题;

目标数据同步模块230,用于若所述目标数据检测模块220检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。

本公开实施例所提供的技术方案,通过向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;检测所述目标数据在所述预发环境中运行是否有问题;若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。通过采用本公开所提供的技术方案,可以简化开发人员的操作流程,并能够预先发现数据更新是否存在问题的效果。

在上述各技术方案的基础上,可选的,所述装置还包括:

环境切换模块,用于若所述目标数据在所述预发环境中运行有问题,则为预发环境的用户提供切换至线上环境的方式,供预发环境的用户切换到线上环境;

错误信息报告模块,用于报告所述目标数据的错误信息。

在上述各技术方案的基础上,可选的,所述目标数据同步模块230包括:

上线请求发送单元,用于若所述目标数据在所述预发环境中运行无问题,则在预设的时间节点,发送所述目标数据的上线请求,供用户进行上线反馈;

目标数据同步单元,用于若接收到同意所述上线请求的反馈信息,则将所述目标数据同步到线上环境的主控分支上。

在上述各技术方案的基础上,可选的,所述目标数据检测模块220包括:

预发分支控制单元,用于控制接收有所述目标数据的预发分支进入封版期运行,其中所述封版期停止接收数据更新;

目标数据检测单元,用于检测所述目标数据在处于封板期的预发环境中运行是否有问题。

在上述各技术方案的基础上,可选的,所述装置还包括:

预发环境访问模块,用于通过预先配置的浏览器代理访问预发环境。

上述产品可执行本公开任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。

实施例三

图3是本公开实施例三提供的一种电子设备的结构示意图。下面参考图3,其示出了适于用来实现本公开实施例的电子设备300的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载电子设备(例如车载导航电子设备)等等的电子设备以及诸如数字tv、台式计算机等等的固定电子设备。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图3所示,电子设备300可以包括处理装置(例如中央处理器、图形处理器等)301,其可以根据存储在只读存储器(rom)302中的程序或者从存储装置308加载到随机访问存储器(ram)303中的程序而执行各种适当的动作和处理。在ram303中,还存储有电子设备300操作所需的各种程序和数据。处理装置301、rom302以及ram303通过总线304彼此相连。输入/输出(i/o)接口305也连接至总线304。

通常,以下装置可以连接至i/o接口305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置306;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置307;包括例如磁带、硬盘等的存储装置308;以及通信装置309。通信装置309可以允许电子设备300与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置309从网络上被下载和安装,或者从存储装置308被安装,或者从rom302被安装。在该计算机程序被处理装置301执行时,执行本公开实施例的方法中限定的上述功能。

需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。

上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。

上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;检测所述目标数据在所述预发环境中运行是否有问题;若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。

或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:向预发环境中的预发分支发送待更新的目标数据,并重新运行接收有所述目标数据的预发环境;其中,所述预发环境与线上环境的数据源相同;检测所述目标数据在所述预发环境中运行是否有问题;若检测运行无问题,则将所述目标数据同步到线上环境的主控分支上。

可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块、单元的名称在某种情况下并不构成对该模块、单元本身的限定。

以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1