[发明专利]基于nodejs的非侵入式项目执行方法及系统、存储介质有效
申请号: | 201910657077.9 | 申请日: | 2019-07-19 |
公开(公告)号: | CN110457022B | 公开(公告)日: | 2023-04-18 |
发明(设计)人: | 周晶;吴峰;郭伟 | 申请(专利权)人: | 上海易点时空网络有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 北京知果之信知识产权代理有限公司 11541 | 代理人: | 唐海力;李志刚 |
地址: | 200125 上海市浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 nodejs 侵入 项目 执行 方法 系统 存储 介质 | ||
本发明实施例公开一种基于nodejs的非侵入式项目执行方法及系统、存储介质,其中方法包括如下步骤:在本地部署子项目a,在服务端部署子项目b,将子项目a的执行命令串接到build指令之后,使执行create‑react‑app和vue‑cli的build生成编译输出触发子项目a,当子项目a被触发后,建立与子项目b的长连接,基于长连接发送数据包data至子项目b,数据包data包括build输出。采用本发明,可以改善create‑react‑app和vue‑cli缺乏发布的工作流程,通过变量打不和长连接压缩传输可以提高系统发布和同步的工作效率。
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于nodejs的非侵入式项目执行方法及系统、存储介质。
背景技术
在基于React或Vue库的前端项目中,手动搭建一套具备完整初始化,开发和编译功能的脚手架极其复杂。很多人都采用社区开源cli脚手架,这些社区脚手架功能齐备,开箱即用,几乎没有学习成本。目前基于React的项目普遍采用create-react-app,基于vue的项目普遍采用vue-cli。社区脚手架在绝大部分的情况下能满足业务需求,然而社区脚手架都是基于本地环境,只是在开发阶段提供了开箱即用的优势,想要部署测试或线上服务器,必须先本地编译代码,然后手动把编译的副本上传到对应的测试或业务机器,这个过程极其低效。
发明内容
本发明实施例提供一种适基于nodejs的非侵入式项目执行方法及系统、存储介质,可以改善create-react-app和vue-cli缺乏发布的工作流程,通过变量打不和长连接压缩传输可以提高系统发布和同步的工作效率。
本发明实施例第一方面提供了一种基于nodejs的非侵入式项目执行方法,可包括:
在本地部署子项目a,在服务端部署子项目b;
将子项目a的执行命令串接到build指令之后,使执行create-react-app和vue-cli的build生成编译输出触发子项目a;
当子项目a被触发后,建立与子项目b的长连接,基于长连接发送数据包data至子项目b,数据包data包括build输出。
进一步的,上述方法还包括:
生成与子项目a相关的信息文件manifest;
将build输出和信息文件manifest通过gzip压缩生成压缩数据包data。
进一步的,上述方法还包括:
将信息文件manifest保存在本地。
进一步的,上述将build输出和信息文件manifest通过gzip压缩生成压缩数据包data,包括:
对比build的当前编译结果与保存在本地的信息文件manifest,将diff的差异文件通过gzip压缩生成压缩数据包data。
进一步的,上述方法还包括:
采用daemon的形式启动执行子项目b,创建TCP监听端口。
本发明实施例第二方面提供了一种基于nodejs的非侵入式项目执行系统,可包括:本地终端和服务器;
本地终端,用于在本地部署子项目a;
服务器,用于在服务端部署子项目b;
本地终端,还用于将子项目a的执行命令串接到build指令之后,使执行create-react-app和vue-cli的build生成编译输出触发子项目a;
本地终端,还用于当子项目a被触发后,建立与子项目b的长连接,基于长连接发送数据包data至子项目b,数据包data包括build输出。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海易点时空网络有限公司,未经上海易点时空网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910657077.9/2.html,转载请声明来源钻瓜专利网。