程序目录的打包方法、装置、电子设备、介质、程序产品制造方法及图纸

技术编号:39245726 阅读:8 留言:0更新日期:2023-10-30 11:58
本申请提供了一种程序目录的打包方法、装置、电子设备、介质、程序产品;方法包括:获取程序的当前构建目录与程序的目标构建目录;对当前构建目录与目标构建目录进行递归比对处理,得到差异文件列表;基于差异文件列表,生成至少一个文件比对任务;基于处理器核心的数量进行子线程衍生处理,得到至少一个子线程;通过至少一个子线程运行文件比对任务,得到差异文件结果;通过子线程对差异文件结果进行压缩打包处理,得到差异结果压缩包;通过子线程向主线程发送差异文件结果,以使主线程生成差异结果详情信息。通过本申请,能够有效缩短程序发布耗时,显示版本差异内容。显示版本差异内容。显示版本差异内容。

【技术实现步骤摘要】
程序目录的打包方法、装置、电子设备、介质、程序产品


[0001]本申请涉及人工智能技术,尤其涉及一种程序目录的打包方法、装置、电子设备、介质、程序产品。

技术介绍

[0002]相关技术中在程序新版本发布过程中,直接通过新版本更新内容覆盖旧版本内容,其优点是发布方式简单且成本较低,但缺点也同样明显,即发布过程中通常会导致程序服务中断进而导致用户受到影响。
[0003]通过打包发布即发布全量包的方式进行程序新版本更新,每次发布都需要推送一个体积庞大的发布包,发布推送速度缓慢,发布者无法有效查看到当前发布内容的增量或修改内容;导致发布效率低,线上用户体验较差。

技术实现思路

[0004]本申请实施例提供一种程序目录的打包方法、装置、电子设备、计算机存储介质以及计算机程序产品,能够有效缩短程序发布耗时,显示版本差异内容。
[0005]本申请实施例的技术方案是这样实现的:
[0006]本申请实施例提供一种程序目录的打包方法,所述方法包括:
[0007]获取程序的当前构建目录与程序的目标构建目录;
[0008]对所述当前构建目录与所述目标构建目录进行递归比对处理,得到差异文件列表;
[0009]基于所述差异文件列表,生成至少一个文件比对任务;
[0010]基于处理器核心的数量进行子线程衍生处理,得到至少一个子线程;
[0011]通过所述至少一个子线程运行所述文件比对任务,得到差异文件结果;
[0012]通过所述子线程对所述差异文件结果进行压缩打包处理,得到差异结果压缩包;
[0013]通过所述子线程向主线程发送所述差异文件结果,以使所述主线程生成差异结果详情信息。
[0014]本申请实施例提供一种程序目录的打包装置,包括:
[0015]目录获取模块,用于获取程序的当前构建目录与程序的目标构建目录;对所述当前构建目录与所述目标构建目录进行递归比对处理,得到差异文件列表;基于所述差异文件列表,生成至少一个文件比对任务;
[0016]子线程处理模块,用于基于处理器核心的数量进行子线程衍生处理,得到至少一个子线程;通过所述至少一个子线程运行所述文件比对任务,得到差异文件结果;通过所述子线程对所述差异文件结果进行压缩打包处理,得到差异结果压缩包;
[0017]主线程处理模块,用于通过所述子线程向主线程发送所述差异文件结果,以使所述主线程生成差异结果详情信息。
[0018]本申请实施例提供一种电子设备,所述电子设备包括:
[0019]存储器,用于存储可执行指令或者计算机程序;
[0020]处理器,用于执行所述存储器中存储的可执行指令或者计算机程序时,实现本申请实施例提供的程序目录的打包方法。
[0021]本申请实施例提供一种计算机可读存储介质,存储有可执行指令或者计算机程序,用于被处理器执行时,实现本申请实施例提供的程序目录的打包方法。
[0022]本申请实施例提供一种计算机程序产品,包括计算机程序或计算机可执行指令,所述计算机程序或计算机可执行指令被处理器执行时,实现本申请实施例提供的程序目录的打包方法。
[0023]本申请实施例具有以下有益效果:
[0024]获取程序的当前构建目录与程序的目标构建目录,通过获取构建目录而非更新文件的方式可以有效降低系统的读取冗余;对当前构建目录与目标构建目录进行递归比对处理,能够针对每一层级的目录进行差异对比,以更加准确、全面的获取全部差异文件;基于差异文件列表,生成至少一个文件比对任务;能够基于差异文件数量,自动生成对应数目的文件比对任务便于后续进行精准执行;通过处理器核心数量进行子线程衍生,基于子线程运行文件比对任务能够高效利用处理器核心,并提高文件比对任务执行效率;对差异文件结果进行压缩打包处理,可以节约存储空间,并有效缩短后续程序发布包的发布耗时;通过主线程生成差异结果详细信息,能够提高程序运行效率,显示版本差异内容。
附图说明
[0025]图1是本申请实施例提供的程序目录的打包系统100的架构示意图;
[0026]图2是本申请实施例提供的服务器400的结构示意图;
[0027]图3A至图3F是本申请实施例提供的程序目录的打包方法的流程示意图;
[0028]图4A是本申请提供的构建产物入口获取当前构建目录示意图;
[0029]图4B是本申请实施例提供的详情信息对比窗口示意图;
[0030]图4C是本申请实施例提供的程序目录的打包插件示意图;
[0031]图4D是本申请实施例提供的程序目录的打包插件详情示意图;
[0032]图4E是本申请实施例提供的差异详细信息对比图;
[0033]图4F是本申请实施例提供的程序目录的打包插件总体统计示意图;
[0034]图5A是本申请实施例提供的程序目录的打包的流程示意图;
[0035]图5B是本申请实施例提供的程序目录的打包插件的结构示意图;
[0036]图5C是本申请实施例提供的整体分层和流程设计示意图;
[0037]图5D是本申请实施例提供的程序目录的打包方法流程示意图。
具体实施方式
[0038]为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0039]在以下的描述中,涉及到“一些实施例,”其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突
的情况下相互结合。
[0040]在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
[0041]可以理解的是,在本申请实施例中,涉及到用户信息等相关的数据,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
[0042]除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
[0043]对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0044]1)程序,也称为产物,即计算机程序(Computer Program),计算机程序是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具。为了使计算机程序得以运行,计算机需要加载代码,同时也要加载数据。从计算机的底层来本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种程序目录的打包方法,其特征在于,所述方法包括:获取程序的当前构建目录与程序的目标构建目录;对所述当前构建目录与所述目标构建目录进行递归比对处理,得到差异文件列表;基于所述差异文件列表,生成至少一个文件比对任务;基于处理器核心的数量进行子线程衍生处理,得到至少一个子线程;通过所述至少一个子线程运行所述文件比对任务,得到差异文件结果;通过所述子线程对所述差异文件结果进行压缩打包处理,得到差异结果压缩包;通过所述子线程向主线程发送所述差异文件结果,以使所述主线程生成差异结果详情信息。2.根据权利要求1所述的方法,其特征在于,所述获取程序的当前构建目录与目标构建目录,包括:获取程序的当前构建产物入口与程序的目标构建产物入口;基于所述程序的当前构建产物入口进行文件读取处理,得到所述程序的当前构建目录;基于所述程序的目标构建产物入口进行文件读取处理,得到所述程序的目标构建目录。3.根据权利要求1所述的方法,其特征在于,对所述当前构建目录与所述目标构建目录进行递归比对处理,得到差异文件列表,包括:基于所述当前构建目录与所述目标构建目录的存储位置,构建目录文件位置仓库;基于所述目录文件位置仓库进行查询处理,得到位于当前工作区的目录文件与位于目标工作区的目录文件;基于所述当前工作区的目录文件与所述目标工作区的目录文件进行层级比对处理,得到所述目标构建目录的增量文件与差量文件;对所述目标构建目录的增量文件与差量文件进行整合处理,得到差异文件列表。4.根据权利要求1所述的方法,其特征在于,在所述对所述当前构建目录与所述目标构建目录进行递归比对处理,得到差异文件列表之后,所述方法还包括:基于所述差异文件列表,获取所述目标构建目录的增量文件与差量文件;基于所述增量文件对所述目标构建目录进行新增处理,得到所述目标构建目录的新增差异文件目录;基于所述差量文件对所述目标构建目录进行修改处理,得到所述目标构建目录的修改差异文件目录。5.根据权利要求4所述的方法,其特征在于,所述基于所述差量文件对所述目标构建目录进行修改处理,得到所述目标构建目录的修改差异文件,包括:基于所述差量文件,获取所述当前构建目录的本地文件,以及所述目标构建目录的更新文件;基于所述本地文件的名称,对缓冲区数据进行查询处理,得到所述当前构建目录的第一缓冲区内容;基于所述更新文件的名称,对所述缓冲区数据进行查询处理,得到所述目标构建目录的第二缓冲区内容;
基于所述第一缓冲区内容与所述第二缓冲区内容进行对比计算处理,得到缓冲区返回值;基于所述缓冲区返回值,对所述当前构建目录的本地文件进行修改处理,得到所述目标构建目录的修改差异文件。6.根据权利要求4所述的方法,其特征在于,所述方法还包括:基于所述新增差异文件目录对所述差异文件列表进行查询处理,得到新增差异文件;基于所述修改差异文件目录对所述差异文件列表进行查询处理,得到修改差异文件;对所述新增差异文件与所述修改差异文件进行压缩处理,得到新增差异文件压缩包和修改差异文件压缩包;基于所述新增差异文件压缩包进行全量发布;基于所述修改差异文件压缩包进行灰度发布;对所述当前构建目录进行压缩备份处理,得到备份数据压缩包。7.根据权利要求1所述的方法,其特征在于,所述基于所述差异文件列表,生成至少一个...

【专利技术属性】
技术研发人员:梁旭飞
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1