CN114124974A - 一种静态资源发布方法、装置、设备及存储介质 - Google Patents
一种静态资源发布方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114124974A CN114124974A CN202111164381.3A CN202111164381A CN114124974A CN 114124974 A CN114124974 A CN 114124974A CN 202111164381 A CN202111164381 A CN 202111164381A CN 114124974 A CN114124974 A CN 114124974A
- Authority
- CN
- China
- Prior art keywords
- static
- static resource
- temporary
- resources
- cdn
- 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
- 230000003068 static effect Effects 0.000 title claims abstract description 223
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 238000004519 manufacturing process Methods 0.000 claims abstract description 80
- 238000012795 verification Methods 0.000 claims abstract description 42
- 238000012360 testing method Methods 0.000 claims abstract description 38
- 230000007246 mechanism Effects 0.000 claims abstract description 33
- 238000012545 processing Methods 0.000 claims abstract description 29
- 230000005856 abnormality Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 230000001960 triggered effect Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 8
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000002159 abnormal effect Effects 0.000 abstract description 7
- 230000002829 reductive effect Effects 0.000 abstract description 5
- 230000001360 synchronised effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 208000001613 Gambling Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000001717 pathogenic effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及数据处理技术领域,更为具体来说,本申请涉及一种静态资源发布方法、装置、设备及存储介质。所述方法包括:将预发布的静态资源发布到测试环境中进行验证;提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;将存储在生产环境的临时目录下的静态资源进行审批机制处理;将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;调用CDN接口,向CDN发送静态资源更新完成。本申请所述方法与装置实现了静态资源的及时发布,减少了对人工操作的依赖。特别是加入的审批机制处理使静态资源的发布内容更加精准,不仅发布及时,也减少了发布异常现象的发生,提高了发布效率。
Description
技术领域
本申请涉及数据处理技术领域,更为具体来说,本申请涉及一种静态资源发布方法、装置、设备及存储介质。
背景技术
近年,为降低前后端技术的耦合度,一般公司的做法都是将静态资源(html,css,js、图片等)单独部署,做到前端代码和后端服务代码分离,从技术上实现动静分离,对开发人员来说职责分工明确,提高开发效率。现有的***都是部署一套WEB服务器,提供一个可视化的管理界面,由运维人员进行资源的上传发布,提高了用户使用产品的体验。
然而,当前的***现状是每次发布资源需要人工手动上传,发布环境过多地依赖人工操作,使静态资源发布的效率较低。另外人工审核的干预也会造成静态资源更新的实时性差,还容易出错,存在资源未及时更新导致的一系列隐患。
发明内容
基于上述技术问题,本申请实施例提供了静态资源发布方法、装置、设备及存储介质。
本发明第一方面提供了一种静态资源发布方法,包括:
将预发布的静态资源发布到测试环境中进行验证;
提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
将存储在生产环境的临时目录下的静态资源进行审批机制处理;
将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用CDN接口,向CDN发送静态资源更新完成通知。
优选地,所述将预发布的静态资源发布到测试环境中进行验证之前,还包括:在代码仓库中对所述预发布的静态资源进行打包。
具体地,所述将存储在生产环境的临时目录下的静态资源进行审批机制处理,包括:
将临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值进行比对;
若比对一致,则对所述临时目录下的静态资源进行关键字审核;
若所述临时目录下的静态资源具有违反法律或公德的预设的关键字,则审批不通过。
进一步地,所述将存储在生产环境的临时目录下的静态资源进行审批机制处理,还包括:用命令访问存储在生产环境的临时目录下的静态资源,如果检查到有正常响应报文则通过审批。
再具体地,所述调用CDN接口,向CDN发送静态资源更新完成通知,包括:
扫描生产目录下文件,得到所述目标静态资源对应的目标文件;
对所述目标文件进行解析,得到能够获取所述目标静态资源的预设域名;
调用CDN接口,向所述预设域名对应的CDN发送静态资源更新完成通知。
优选地,所述静态资源发布方法还包括:
当调用CDN接口发生异常时,则发出告警邮件;
针对所述异常,根据异常触发的URL提示重新调用所述CDN接口。
进一步优选地,所述静态资源发布方法还包括:
在将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录的过程中,若接收到所述目标服务器发送的同步异常提示,则进行回滚操作,将静态资源恢复到未更新的状态。
本发明第二方面提供了一种静态资源发布装置,所述装置包括:
验证模块,用于将预发布的静态资源发布到测试环境中进行验证;
提交模块,用于提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
审批模块,用于将存储在生产环境的临时目录下的静态资源进行审批机制处理;
同步模块,用于将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用模块,用于调用CDN接口,向CDN发送静态资源更新完成通知。
本发明第三方面提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如下步骤:
将预发布的静态资源发布到测试环境中进行验证;
提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
将存储在生产环境的临时目录下的静态资源进行审批机制处理;
将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用CDN接口,向CDN发送静态资源更新完成通知。
本发明第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以下步骤:
将预发布的静态资源发布到测试环境中进行验证;
提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
将存储在生产环境的临时目录下的静态资源进行审批机制处理;
将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用CDN接口,向CDN发送静态资源更新完成通知。
本申请的有益效果为:本申请通过验证、提交、审批、同步和调用等一整套操作实现了静态资源的发布,在将预发布的静态资源发布到测试环境中进行验证,提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下,对存储在生产环境的临时目录下的静态资源进行审批机制处理,将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;最后调用CDN接口,向CDN发送静态资源更新完成通知。本申请所述方法减少了静态资源发布时对人工操作的依赖,使静态资源的发布内容更加精准,不仅发布及时,也减少了发布异常现象的发生,大大提高了发布效率和实时性。
附图说明
构成说明书的一部分的附图描述了本申请的实施例,并且连同描述一起用于解释本申请的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本申请,其中:
图1示出了本申请一示例性实施例的方法流程示意图;
图2示出了本申请一示例性实施例的装置结构示意图;
图3示出了本申请一示例性实施例所提供的一种电子设备的结构示意图;
图4示出了本申请一示例性实施例所提供的一种存储介质的示意图。
具体实施方式
以下,将参照附图来描述本申请的实施例。但是应该理解的是,这些描述只是示例性的,而并非要限制本申请的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本申请的概念。对于本领域技术人员来说显而易见的是,本申请可以无需一个或多个这些细节而得以实施。在其他的例子中,为了避免与本申请发生混淆,对于本领域公知的一些技术特征未进行描述。
应予以注意的是,这里所使用的术语仅是为了描述具体实施例,而非意图限制根据本申请的示例性实施例。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组合。
现在,将参照附图更详细地描述根据本申请的示例性实施例。然而,这些示例性实施例可以多种不同的形式来实施,并且不应当被解释为只限于这里所阐述的实施例。附图并非是按比例绘制的,其中为了清楚表达的目的,可能放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状以及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
实施例1:
为减少对人工操作的依赖,提升数据处理的效率,本实施例提供了一种静态资源发布方法,如图1所示,具体如下:
S1、将预发布的静态资源发布到测试环境中进行验证;
S2、提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
S3、将存储在生产环境的临时目录下的静态资源进行审批机制处理;
S4、将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
S5、调用CDN接口,向CDN发送静态资源更新完成通知。
优选地,将预发布的静态资源发布到测试环境中进行验证之前,还包括:在代码仓库中对预发布的静态资源进行打包。
具体地,将存储在生产环境的临时目录下的静态资源进行审批机制处理,包括:
将临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值进行比对,其中MD5是一种被广泛使用的密码散列函数,可以产生一个128位的散列值,用于确保信息的一致性;
若比对一致,则对临时目录下的静态资源进行关键字审核;
若临时目录下的静态资源具有违反法律或公德的预设的关键字,则审批不通过。
进一步地,将存储在生产环境的临时目录下的静态资源进行审批机制处理,还包括:用命令访问存储在生产环境的临时目录下的静态资源,如果检查到有正常响应报文则通过审批。
在具体实施中,目标服务器选为WEB服务器,WEB服务器主要提供网上信息浏览服务,我们最终要将静态资源展示给用户浏览器端,所以需要将审批通过后的目标静态资源由所述临时目录同步至WEB服务器的生产目录下。
CDN全称为Content Delivery Network即内容分发网络,CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发与调度,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
再具体地,调用CDN接口,向CDN发送静态资源更新完成通知,包括:
扫描生产目录下文件,得到所述目标静态资源对应的目标文件;
对所述目标文件进行解析,得到能够获取所述目标静态资源的预设域名;
调用CDN接口,向所述预设域名对应的CDN发送静态资源更新完成通知。
优选地,所述静态资源发布方法还包括:
当调用CDN接口发生异常时,则发出告警邮件;
针对所述异常,根据异常触发的URL提示重新调用所述CDN接口。
进一步优选地,所述静态资源发布方法还包括:
在将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录的过程中,若接收到所述目标服务器发送的同步异常提示,则进行回滚操作,将静态资源恢复到未更新的状态。在收到同步异常提示和进行回滚操作之间还会接收回滚指令,根据回滚指令进行回滚操作。另外在具体实施中,调用CDN接口也可以通过API接口来触发。在具体实施过程中,考虑到问题的极端性和重要性,这里确定一键回滚还需要人工确定,如果确定需要回滚,则人工按下一键回滚键。
本申请通过验证、提交、审批、同步和调用等一整套操作实现了静态资源的发布,在将预发布的静态资源发布到测试环境中进行验证,提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下,对存储在生产环境的临时目录下的静态资源进行审批机制处理,将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;最后调用CDN接口,向CDN发送静态资源更新完成通知。本申请所述方法减少了静态资源发布时对人工操作的依赖,使静态资源的发布内容更加精准,不仅发布及时,也减少了发布异常现象的发生,大大提高了发布效率和实时性。
实施例2:
本实施例提供了一种静态资源发布方法,具体步骤详述如下。
第一步,将预发布的静态资源发布到测试环境中进行验证。
具体地,所述预发布的静态资源包括包括html,css,js,视频及图片等资源,包含这些静态资源的静态资源需要在代码仓库中进行打包,打包完成后将其发布到测试环境中进行验证,验证包括身份验证、交互验证等,例如用户登录、用户会话等。所谓的测试环境需要测试人员自行搭建,需要测试人员自行搭建测试环境、测试数据的配置、数据库等等。当然,将预发布的静态资源发布到测试环境中进行验证,也有可能是测试环境的因素使得验证不通过,所以本申请还设置了对异常的处理及一键回滚的操作。
第二步,提交验证通过的静态资源并将其暂时存储在生产环境的临时目录下。
具体地,在复制目标端需要按照源端相同的事务环境进行提交,确保目标上数据的一致性。验证通过后的资源,会存放到一个指定的目录,通过在生产环境主机中配置Crontab定时任务,Crontab命令常见于Unix或类Unix的操作***之中,用于设置周期性被执行的指令,该命令从标准输入设备读取指令。优选地,还可以配置Rsync命令来同步,Rsync命令常用于在Linux或Unix***局部拷贝和同步文件,例如可设置每分钟执行一次Rsync同步命令,定时增量拉取相应验证通过的静态资源到生产环境的临时目录下,这里的临时目录某种意义上可称作虚拟目录。
第三步,将存储在生产环境的临时目录下的静态资源进行审批机制处理。
需要说明的是,审批机制处理主要是为了确保上线的资源内容准确无误,审批流程是由程序自动触发,但也包括发送邮件或者短信方式通知相关人员。审批机制处理包括对预发布静态资源内容的审核,如果预发布静态资源内容属于下述情况则被认为未通过审批机制处理:违反宪法所确定的基本原则;危害国家安全,泄露国家秘密,煽动颠覆国家政权,破坏国家统一;损害国家的荣誉和利益;煽动民族仇恨、民族歧视,破坏民族团结;破坏国家宗教政策,宣扬邪教,宣扬封建迷信;散布谣言,编造和传播假新闻,扰乱社会秩序,破坏社会稳定;散布淫秽、色情、赌博、暴力、恐怖或者教唆犯罪;侮辱或者诽谤他人,侵害他人合法权益。只有通过了审批机制处理,才将审批通过后的目标静态资源由临时目录同步至WEB服务器的生产目录。
具体地,将存储在生产环境的临时目录下的静态资源进行审批机制处理,包括:将临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值进行比对;当临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值一致时,再对临时目录下的静态资源进行关键字审核,这里的关键字可以包含上述违反法律或违***公德等字词;如果临时目录下的静态资源具有涉及国家规定的违反法律或违***公德的关键字词,则审批不通过。其中MD5是一种被广泛使用的密码散列函数,可以产生一个128位的散列值,用于确保信息的一致性。进一步地,将存储在生产环境的临时目录下的静态资源进行审批机制处理,还包括:用命令访问存储在生产环境的临时目录下的静态资源,看是否有对命令访问的正常响应报文,如果有则通过审批。
第四步,将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下。
审批通过后,资源由临时目录同步至目标服务器,这里优选地,目标服务器选为WEB服务器,即将暂时存储在生产环境的临时目录下的静态资源直接存储至生产目录下,其中,所谓生产目录就是对应着生产环境下信息资源的目录。WEB服务器主要提供网上信息浏览服务,我们最终要将静态资源展示给用户浏览器端,所以需要将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下。
第五步,调用CDN接口,向CDN发送静态资源更新完成通知。
需要说明的是,CDN是一个文件管理***,CDN的全称是Content DeliveryNetwork,即内容分发网络,提供的是WEB应用服务,通过公网可以直接访问,主要用于CDN回源访问。具体而言,CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。纵观整个宽带服务的价值链,内容提供商和用户位于整个价值链的两端,中间依靠网络服务提供商将其串接起来。随着互联网工业的成熟和商业模式的变革,在这条价值链上的角色越来越多也越来越细分。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。
具体地,针对审批通过的文件,会进行自动扫描,由程序对其解析拼接成“http://域名/URL具体文件名”的方式,通知CDN接口,CDN接口收到通知后将静态资源发布内容对应的CDN节点清空缓存,获取新资源进行缓存加速。
再进一步地,作为可替换的实施方式,本申请还增加了步骤:当调用CDN接口发生异常时,则发出告警邮件;针对异常,根据异常触发的URL提示重新调用CDN接口。出现异常情况的原因有很多,问题的原因很多,可能是运维配置问题、测试环境差异问题、漏测问题、修改范围评估不足导致旧功能有问题等等。因为所谓的测试环境需要测试人员自行搭建,需要测试人员自行搭建测试环境,测试数据的配置、数据库的配置都可能出现问题,从而导致在测试进行过程中异常的出现,一旦异常出现,就需要一键回滚功能。特别地,所述静态资源发布方法还包括:在将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录的过程中,若接收到所述目标服务器发送的同步异常提示,则进行回滚操作,将静态资源恢复到未更新的状态。在具体实施中,在收到同步异常提示和进行回滚操作之间还会接收回滚指令,根据回滚指令进行回滚操作。另外,作为可变换的实施方式,在静态资源发布的过程中出现除同步异常外的其他异常时,均可以使用一键回滚操作。
其中,所述一键回滚功能主要用于异常时的快速恢复,默认取上一次备份的版本数据进行发布,也支持选择版本回滚进行回滚。由于每次发布静态资源的时候,都会对当前的静态资源进行备份,一键回滚就是无论进行任何操作,点击回滚之后都可以立刻回到备份的状态,然后点击前滚又可以回到最新状态。一键回滚是对所实施操作的逆操作,是为了避免静态资源发布异常的情况,可以回到正常的状态。
再需要说明的是,以上的“第几步”只是为了说明技术实施时所具有的逻辑步骤,而在具体的实施过程中还可能根据具体情况增加步骤,例如,本申请实施例中还可以有第六步和第七步,依次为:当调用CDN接口发生异常时,则发出告警邮件;针对异常,根据异常触发的URL提示重新调用CDN接口。在具体实施过程中,考虑到问题的极端性和重要性,这里确定一键回滚需要人工确定,如果确定需要回滚,则人工按下一键回滚键。而上述每一步都可能通过许多步实现或转换,其中有些步骤是并行,有些步骤是串行,这些不再做具体限定,但本实施例中具体的可变换的实施方式同样属于本申请保护的范围。
相比之下,本实施方式中的所述静态资源发布方法可以无需人工干预自动发布静态资源,从而大大提高了发布效率,同时由于程序自动检查有无异常存在,本方法还能够及时有效地发现异常,使人工介入处理也非常简单,进而使得响应效率更高。本申请将存储在生产环境的临时目录下的静态资源进行审批机制处理,将审批通过后的目标静态资源由临时目录同步至目标服务器的生产目录,实现了静态资源的自动发布,减少了对人工操作的依赖。特别地,本案中加入的审批机制处理,使静态资源的发布内容更加精准,不仅发布及时,也减少了发布异常现象的发生,大大提高了发布效率。
实施例3:
本实施例实施了一种静态资源发布装置,如图2所示,所述装置包括:
验证模块301,用于将预发布的静态资源发布到测试环境中进行验证;
提交模块302,用于提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
审批模块303,用于将存储在生产环境的临时目录下的静态资源进行审批机制处理;
同步模块304,用于将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用模块305,用于调用CDN接口,向CDN发送静态资源更新完成通知。
具体地,所述预发布的静态资源包括html、css、js、图片等等资源,验证模块实现将预发布的静态资源发布到测试环境中进行验证的过程中,优选地,还具体用于对包含这些静态资源的静态资源进行打包,打包完成后将其发布到测试环境中进行验证,验证包括身份验证、交互验证等,例如用户登录、用户会话等。
具体地,所述提交模块具体用于:在复制目标端需要按照源端相同的事务环境进行提交,确保目标上数据的一致性。验证通过后的资源,会存放到一个指定的目录,通过在生产环境主机中配置Crontab定时任务,Crontab命令常见于Unix或类Unix的操作***之中,用于设置周期性被执行的指令,该命令从标准输入设备读取指令。优选地,还可以配置Rsync命令来同步,Rsync命令常用于在Linux或Unix***局部拷贝和同步文件,例如可设置每分钟执行一次Rsync同步命令,定时增量拉取相应验证通过的静态资源到生产环境的临时目录下,这里的临时目录某种意义上可称作虚拟目录。
再具体地,所述审批模块在用于将存储在生产环境的临时目录下的静态资源进行审批机制处理时,还具体用于:将临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值进行比对;当临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值一致时,再对临时目录下的静态资源进行关键字、关键词审核,这里的关键字词就包含了上述违反法律或违***公德等字词;如果临时目录下的静态资源具有涉及国家规定的违反法律或违***公德的关键字词,则审批不通过。进一步地,将存储在生产环境的临时目录下的静态资源进行审批机制处理,还包括:用命令访问存储在生产环境的临时目录下的静态资源,如果检查到有正常响应报文则通过审批。
优选地,所述装置还包括异常处理模块,用于当调用CDN接口发生异常时,则自动发出告警邮件;针对异常,根据异常触发的URL提示重新调用CDN接口。
本申请装置实现了静态资源的自动发布,将存储在生产环境的临时目录下的静态资源进行审批机制处理,将审批通过后的目标静态资源由临时目录同步至目标服务器的生产目录,实现了静态资源的快速发布,减少了对人工操作的依赖。特别地,本案中加入的审批机制处理,使静态资源的发布内容更加精准,不仅发布及时,也减少了发布异常现象的发生,大大提高了发布效率。
下面请参考图3,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图3所示,所述电子设备2包括:处理器200、存储器201、总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的静态资源发布方法的步骤。所述方法的步骤包括:将预发布的静态资源发布到测试环境中进行验证;提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;将存储在生产环境的临时目录下的静态资源进行审批机制处理;将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;调用CDN接口,向CDN发送静态资源更新完成通知。所述计算机程序还执行所述静态资源发布方法的其他步骤,包括:当调用CDN接口发生异常时,则发出告警邮件;针对异常,根据异常触发的URL提示重新调用CDN接口。
其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该***网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述静态资源发布方法可以应用于处理器200中,或者由处理器200实现。
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的电子设备与本申请实施例提供的静态资源发布方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
本申请实施方式还提供一种与前述实施方式所提供的静态资源发布方法对应的计算机可读存储介质,请参考图4,图4示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的静态资源发布方法。
本申请实施方式还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:将预发布的静态资源发布到测试环境中进行验证;提交验证通过的静态资源并将其暂时存储在生产环境的临时目录下;将存储在生产环境的临时目录下的静态资源进行审批机制处理;将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;调用CDN接口,向CDN发送静态资源更新完成通知。
另外,本申请可用于众多通用或专用的计算机***环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器***、基于微处理器的***、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何***或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中,所述计算机存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请的上述实施例提供的计算机可读存储介质与本申请实施例提供的空分复用光网络中量子密钥分发信道分配方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
需要说明的是:在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
还需要强调的是,本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种静态资源发布方法,其特征在于,包括:
将预发布的静态资源发布到测试环境中进行验证;
提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
将存储在生产环境的临时目录下的静态资源进行审批机制处理;
将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用CDN接口,向CDN发送静态资源更新完成通知。
2.根据权利要求1所述的静态资源发布方法,其特征在于,所述将预发布的静态资源发布到测试环境中进行验证之前,还包括:
在代码仓库中对所述预发布的静态资源进行打包。
3.根据权利要求2所述的静态资源发布方法,其特征在于,所述将存储在生产环境的临时目录下的静态资源进行审批机制处理,包括:
将临时目录下静态资源的MD5值与测试环境验证通过的静态资源的MD5值进行比对;
若比对一致,则对所述临时目录下的静态资源进行关键字审核;
若所述临时目录下的静态资源具有违反法律或公德的预设的关键字,则审批不通过。
4.根据权利要求3所述的静态资源发布方法,其特征在于,所述将存储在生产环境的临时目录下的静态资源进行审批机制处理,还包括:
使用预设命令访问存储在生产环境的临时目录下的静态资源,如果检查到有正常响应报文则通过审批。
5.根据权利要求1所述的静态资源发布方法,其特征在于,所述调用CDN接口,向CDN发送静态资源更新完成通知,包括:
扫描生产目录下的文件,得到所述目标静态资源对应的目标文件;
对所述目标文件进行解析,得到能够获取所述目标静态资源的预设域名;
调用CDN接口,向所述预设域名对应的CDN发送静态资源更新完成通知。
6.根据权利要求5所述的静态资源发布方法,其特征在于,所述静态资源发布方法还包括:
当调用CDN接口发生异常时,则发出告警邮件;
针对所述异常,根据异常触发的URL提示重新调用所述CDN接口。
7.根据权利要求1所述的静态资源发布方法,其特征在于,所述静态资源发布方法还包括:
在将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录的过程中,若接收到所述目标服务器发送的同步异常提示,则进行回滚操作,将静态资源恢复到未更新的状态。
8.一种静态资源发布装置,其特征在于,所述装置包括:
验证模块,用于将预发布的静态资源发布到测试环境中进行验证;
提交模块,用于提交验证通过的静态资源并将所述静态资源暂时存储在生产环境的临时目录下;
审批模块,用于将存储在生产环境的临时目录下的静态资源进行审批机制处理;
同步模块,用于将审批通过后的目标静态资源由所述临时目录同步至目标服务器的生产目录下;
调用模块,用于调用CDN接口,向CDN发送静态资源更新完成通知。
9.一种计算机设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111164381.3A CN114124974A (zh) | 2021-09-30 | 2021-09-30 | 一种静态资源发布方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111164381.3A CN114124974A (zh) | 2021-09-30 | 2021-09-30 | 一种静态资源发布方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114124974A true CN114124974A (zh) | 2022-03-01 |
Family
ID=80441323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111164381.3A Pending CN114124974A (zh) | 2021-09-30 | 2021-09-30 | 一种静态资源发布方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114124974A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103200278A (zh) * | 2013-04-25 | 2013-07-10 | 网宿科技股份有限公司 | 源站文件更新发布方法及缓存文件更新方法 |
CN106920204A (zh) * | 2017-03-20 | 2017-07-04 | 泰华智慧产业集团股份有限公司 | 接口服务的发布方法及*** |
CN108111629A (zh) * | 2018-01-19 | 2018-06-01 | 京东方科技集团股份有限公司 | 应用编程接口服务装置和应用编程接口服务*** |
CN112182392A (zh) * | 2020-09-30 | 2021-01-05 | 重庆旷闻科技咨询有限公司 | 一种基于大数据的信息分析方法 |
-
2021
- 2021-09-30 CN CN202111164381.3A patent/CN114124974A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103200278A (zh) * | 2013-04-25 | 2013-07-10 | 网宿科技股份有限公司 | 源站文件更新发布方法及缓存文件更新方法 |
CN106920204A (zh) * | 2017-03-20 | 2017-07-04 | 泰华智慧产业集团股份有限公司 | 接口服务的发布方法及*** |
CN108111629A (zh) * | 2018-01-19 | 2018-06-01 | 京东方科技集团股份有限公司 | 应用编程接口服务装置和应用编程接口服务*** |
CN112182392A (zh) * | 2020-09-30 | 2021-01-05 | 重庆旷闻科技咨询有限公司 | 一种基于大数据的信息分析方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10963472B2 (en) | Systems and methods for indexing content | |
US8683311B2 (en) | Generating structured data objects from unstructured web pages | |
US10642904B2 (en) | Infrastructure enabling intelligent execution and crawling of a web application | |
US10068028B1 (en) | Deep link verification for native applications | |
US9864671B1 (en) | Systems and methods of live experimentation on content provided by a web site | |
CN104461491B (zh) | 一种Hybrid组件的运行方法和*** | |
CN104426925B (zh) | 网页资源获取方法及装置 | |
CN104838413A (zh) | 基于用户提交来调整内容递送 | |
WO2007063547A2 (en) | System and method for appending security information to search engine results | |
CN103577526B (zh) | 一种验证页面是否被修改的方法、***及浏览器 | |
US8930330B1 (en) | Validation of log formats | |
WO2016101764A1 (zh) | 双核浏览器中进行广告拦截的方法和浏览器装置 | |
CN113343312B (zh) | 基于前端埋点技术的页面防篡改方法及*** | |
WO2016039783A1 (en) | Auditing of web-based video | |
US20210392144A1 (en) | Automated and adaptive validation of a user interface | |
CN100511239C (zh) | 一种访问网络资源的方法、***及装置 | |
US9645980B1 (en) | Verification of native applications for indexing | |
CN109670100B (zh) | 一种页面数据抓取方法及装置 | |
CN111859077A (zh) | 数据处理方法、装置、***、计算机可读存储介质 | |
CN103258055B (zh) | 一种文件下载设备和方法 | |
CN116304458B (zh) | 一种web页面实时通知更新方法、装置、设备及介质 | |
US7085397B2 (en) | Unfair contents appropriation detection system, computer program and storage medium | |
CN114124974A (zh) | 一种静态资源发布方法、装置、设备及存储介质 | |
CN111177600A (zh) | 一种基于移动应用的内置网页加载方法及装置 | |
CN113704648A (zh) | 页面数据处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |