【技术实现步骤摘要】
一种基于Openresty的计算密集型应用部署方法及装置
[0001]本专利技术涉及计算机系统部署及调用领域,尤其涉及基于Openresty的计算密集型应用部署方法。
技术介绍
[0002]Nginx同Apache、Tomcat一样,是一种开源服务器软件。它是一个高性能的http和反向代服务器,有着高并发、性能好和占用内存少等特点。
[0003]OpenResty是一个基于Nginx与Lua的高性能Web平台,其内部集成了大量精良的Lua库、第三方模块,从而将Nginx有效地变成一个强大的通用Web应用平台。这样,Web开发人员和系统工程师可以使用Lua脚本语言调动Nginx支持的各种C以Lua模块,快速构造出高性能Web应用系统。
[0004]基于OpenResty的Web应用系统目前主要有两种,即IO密集型与CPU计算密集型:
[0005](1)IO密集型,涉及到网络、磁盘IO的任务都是IO密集型任务,这类任务的特点是CPU消耗很少,任务的大部分时间都在等待IO操作完成;
[0006](2 ...
【技术保护点】
【技术特征摘要】
1.一种基于Openresty的计算密集型应用部署方法,其特征在于,所述方法包括:在Openresty系统初始化阶段,创建全局的Lua缓存区,所述Lua缓存区中存储静态数据资源,用于子进程访问共享数据;在Openresty系统中设置Nginx子进程管理模块,所述子进程管理模块用于子进程的创建、空闲子进程管理、异常子进程回收、防过载负载保护;配置一Nginx worker进程,负责系统网络的进出,并作为所述子进程的父进程;建立子进程、父进程之间的tcp通信;子进程在内容处理阶段,负责用户请求的处理、转发及输出响应。2.根据权利要求1所述的方法,其特征在于,所述子进程负责阻塞式计算。3.根据权利要求1所述的方法,其特征在于,所述子进程管理模块的创建与退出,通过Openresty调用luaposix模块实现。4.根据权利要求1所述的方法,其特征在于,所述子进程中,引入LuaSocket,用于子进程与父进程间建立基于tcp协议的双向通信。5.根据权利要求1所述的方法,其特征在于,所述子进程在内容处理阶段的工作流程为:步骤1、当接收到的用户请求为计算请求时,判断队列中是否有空闲的子进程,如果有,则执行步骤2;如果没有,则由所述子进程管理模块创建一个新的子进程,并执行步骤2;步骤2、对子进程进行初始化,并建立父进程与子进程之间的tcp通信,父进程将计算请求发送给子进程;步骤3、子进程剥离并处理收到的计算数据,调用对应的算法模...
【专利技术属性】
技术研发人员:刘德贵,罗鑫,王达,
申请(专利权)人:北京睿芯高通量科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。