CN113641343B - 基于环境隔离的高并发python算法调用方法及介质 - Google Patents
基于环境隔离的高并发python算法调用方法及介质 Download PDFInfo
- Publication number
- CN113641343B CN113641343B CN202111201141.6A CN202111201141A CN113641343B CN 113641343 B CN113641343 B CN 113641343B CN 202111201141 A CN202111201141 A CN 202111201141A CN 113641343 B CN113641343 B CN 113641343B
- Authority
- CN
- China
- Prior art keywords
- algorithm
- python
- script
- docker
- calling
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及软件开发领域,具体而言,涉及一种基于环境隔离的高并发python算法调用方法及介质。该方法包括将python算法脚本部署到docker中;搭建和接收Kafka消息队列;调用所述python算法脚本中的python算法;通过所述Kafka消息队列返回所述python算法的执行结果。该方法通过引入docker实现在一台物理机上部署上千python算法且环境隔离,通过消息队列实现上十万上百万的大数据量并发,通过再次组建独立消息返回结果方式,解决因算法执行时间较长无法接收返回结果问题,极大的解决了在实际项目中因大数据量、高并发、需较长时间的计算等特性导致的无法调用问题。
Description
技术领域
本发明涉及软件开发领域,具体而言,涉及一种基于环境隔离的高并发python算法调用方法及介质。
背景技术
python是一种面向对象的解释型计算机程序设计语言,具有丰富和强大的标准库和第三方扩展库。因为其简单易学,目前Python已经成为最受欢迎的程序设计语言之一。由于Python语言的简洁性、易读性、可扩展性以及完全免费,在国内外用Python做算法研究的机构和人员日益增多。
在实际应用中,尤其是结合到实际项目应用时,算法的执行往往需要大数据量、高并发、复杂且长时间的计算,常规的算法调用模式已无法满足此需求。现有技术的主要缺点有:
1)一般复杂的深度学习、机器学习算法执行时间一般在半小时到几小时,但常规的web服务调用模式是HTTP请求,HTTP连接可等待时间较短,一般只有几分钟,不足以支撑。
2)常规的web服务调用模式的TPS最高能达到20000,但对于现在的上十万上百万的大数据量并发无法支持。
3)不同的python算法可能需要的库的依赖环境是不同的甚至可能是冲突的,当成千上万的python算法需要部署时,常规的服务器部署已无法支持。
4)大多数算法工程师提供的python代码不会使用web框架,只有算法脚本,无法直接部署成服务。
有鉴于此,特提出本发明。
发明内容
本发明的目的在于提供一种基于环境隔离的高并发python算法调用方法及介质,以实现在高并发情况下快速、高效调用算法。
为了实现上述目的,本发明采用以下技术方案:
第一方面,本发明提供了一种基于环境隔离的高并发python算法调用方法,包括:
将python算法脚本部署到docker中;
搭建和接收Kafka消息队列;
调用所述python算法脚本中的python算法;
通过所述Kafka消息队列返回所述python算法的执行结果。
第二方面,本发明提供了一种基于环境隔离的高并发python算法调用装置,包括:
算法脚本部署模块,用于将python算法脚本部署到docker中;
消息队列搭建和接收模块,用于搭建Kafka消息队列和接收消息;
算法调用模块,用于调用所述python算法脚本中的python算法;
执行结果返回模块,用于通过所述Kafka消息队列返回所述python算法的执行结果。
第三方面,本发明提供了一种电子设备,包括:
至少一个处理器,以及与至少一个所述处理器通信连接的存储器;
其中,所述存储器存储有可被至少一个所述处理器执行的指令,所述指令被至少一个所述处理器执行,以使至少一个所述处理器能够执行上述的方法。
第四方面,本发明提供了一种计算机可读存储介质,所述介质上存储有计算机指令,所述计算机指令用于使所述计算机执行上述的方法。
与现有技术相比,本发明的有益效果为:
本发明提供的基于环境隔离的高并发python算法调用方法与传统的算法部署模式相比,通过引入docker,事前将大量python算法部署到统一的docker服务中,并创建好所需环境,实现在一台物理机上部署上千python算法且环境隔离,再通过懒加载模式仅在系统内记录对应算法的索引,当用户在高并发调用时,系统通过索引触发消息,与传统的算法调用模式相比,通过消息队列将执行命令传输给对应的docker服务,再通过本地运行算法实现高效的执行,实现上十万上百万的大数据量并发,通过再次组建独立消息返回结果方式,解决因算法执行时间较长无法接收返回结果问题,极大的解决了在实际项目中因大数据量、高并发、需较长时间的计算等特性导致的无法调用问题,不仅节省了网络资源,同时提高了服务器性能。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是实施例1提供的基于环境隔离的高并发python算法调用方法的流程图;
图2是实施例2提供的基于环境隔离的高并发python算法调用装置的结构示意图;
图3是实施例3提供的电子设备的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
实施例1
图1是本实施例提供的一种基于环境隔离的高并发python算法调用方法的流程图。该方法可以由基于环境隔离的高并发python算法调用装置来执行,该装置可以由软件和/或硬件构成,并一般集成在电子设备中。
参见图1,该方法包括以下步骤:
S110、将python算法脚本部署到docker中。
优选地,所述将python算法脚本部署到docker中包括:
根据python算法脚本,编写容器镜像文件dockerfile,创建包含不同语言版本的python基础环境的镜像;
将部署工单信息保存到mysql数据库中,所述部署工单信息包括脚本文件和脚本所需语言环境;
根据所述脚本所需语言环境,查找脚本部署所需的镜像;
根据所述脚本部署所需的镜像和所述脚本文件,组建命令行实现docker创建,然后启动docker容器服务,在启动docker容器服务的同时通过挂载路径方式将脚本文件传递到docker中。
其中,容器镜像文件dockerfile具体是根据python脚本最常使用的几种语言环境编写的,在容器镜像文件dockerfile编写完成之后,再使用docker build(创建镜像命令)创建包含不同语言版本的python基础环境的镜像,比如python2和python3。
部署工单信息包括脚本文件和脚本所需语言环境,还包括算法名称、上传人和传参说明等信息。
优选地,所述组建命令行实现docker创建,然后启动docker容器服务包括:
组建命令行实现docker创建;
根据脚本文件中的依赖版本文件requirement.txt,通过执行pipinstall–rrequirement.txt方式完善python脚本所需的执行环境;
启动docker容器服务。
本步骤实现了每个python算法单独部署一个docker的功能,此方法既可以通过docker实现python算法的执行环境独立,又因为docker所需资源较小,一台配置较好的服务器可以配置上千个docker,最大程度的节省了服务器资源。
优选地,在所述将python算法脚本部署到docker中之后还包括:
记录docker的ID;
以算法名称作为KEY,所述ID作为VALUE,生成记录信息,将所述记录信息存储到mysql数据库和redis缓存数据库中。
优选地,在所述将python算法脚本部署到docker中之后还包括:
获取修改后的脚本文件;
根据算法名称查找与所述算法名称相对应的部署docker的ID;
根据所述ID获取与所述ID相对应的docker,更新docker内的脚本文件和依赖版本文件requirement.txt,执行pipinstall–r requirement.txt更新python脚本所需的执行环境。
优选地,当算法删除时,删除对应docker即可,例如可以包括以下步骤:1)当需要删除某算法时,根据算法名称从数据库查找对应的部署容器ID;2)根据容器ID删除对应容器。
S120、搭建和接收Kafka消息队列。
优选地,所述搭建和接收Kafka消息队列包括:
搭建Kafka集群;
接收算法调用者发起的消息队列,所述消息队列中携带算法脚本调用工单;
对消息进行消费,在消费过程中,单起新线程去执行python算法的调用,在单线程中记录调用工单信息和消息队列的唯一编码,线程启动后,对消息队列直接返回接收成功;python算法调用的新线程执行完毕后,建立新的消息队列,返回执行结果和线程中记录的原消息队列的唯一编码至算法调用者。
其中,Kafka是一款基于发布与订阅的消息系统,它一般被称为“分布式提交日志”或者“分布式流平台”。文件系统或者数据库提交日志用来提供所有事物的持久化记录,通过重建这些日志可以重建系统的状态。同样地,Kafka的数据是按照一定顺序持久化保存的,可以按需读取。据了解,Kafka每秒可以生产约25万条消息(50MB),每秒消费55万条消息(110MB)。Kafka消息并发量跟Kafka集群的吞吐量成正比。
本发明通过3台服务器(Kafka中称为broker,消息的缓存代理)搭建Zookeeper集群和Kafka集群(Kafka通过Zookeeper管理集群配置),一般来说,broker越多,集群的吞吐量越大。当用户发送访问消息过来时,Kafka集群把消息分配到3个Partition(有序的队列),并且可以分布到3台机器上进行处理,提高集群吞吐量。
算法脚本调用工单中包含算法名称和参数等信息。
因为每台Kafka消费消息的大小是有上限的,因此提高Kafka的吞吐量,保证在单位时间内消费几十万甚至上百万条消息,核心点就是尽最大可能提升每条消息消费的性能,因此在实现Kafka消息队列服务时,在重写KafkaListener(Kafka的监听事件)时,将获取到消息传参后直接新增RunTaskRunnable(子线程)去处理实际任务,尽可能的缩短监听事件消费时间,让Kafka在单位时间能够消费更多的消息,从而提升吞吐量。
S130、调用python算法。
优选地,所述调用python算法包括:
根据消息传参获取待执行的算法名称和参数信息,根据算法名称查询部署所述算法的docker的ID信息;
根据算法脚本调用工单携带的参数信息和python的部署环境,组建调用python的命令行语句。
示例性地,调用python算法的命令行语句为python3main.py XXX,其中第一个单词是python还是python3取决于python的部署环境,如果是python3.0版本以上则为python3,反义亦然。main.py是puthon算法的启动主文件。XXX是S120中算法调用者发起的消息队列中的算法脚本调用工单携带的参数。
在执行python算法调用的新线程中首先根据消息传参获取待执行的算法名称和参数信息,根据算法名称通过懒加载从S110建立的信息表中查询到部署这个算法的docker的ID等信息,然后根据算法脚本调用工单携带的参数信息组建调用python的命令行语句。
然后使用Runtime.getRuntime().exec(String[] cmdarray, String[] envp,File dir)方法执行生成的命令行语句。其中 File dir赋值为docker中main.py所在的全路径,以此保证在此路径下执行命令行语句,以防python脚本因绝对路径无法运行。该方法将产生一新进程(process)独立运行命令行语句,最大程度的实现了python执行的并发,同时相互独立,互不干扰。
在执行调用python的命令行语句后,通过新进程的SequenceInputStream(InputStream s1, InputStream s2)(组合流方法)同时获取在执行python算法过程中所产生的结果和报错信息。
S140、通过Kafka消息队列返回python算法执行结果。
python算法执行结束后,新建一个包含执行结果的消息,再通过Kafka消息队列返回给客户。
上述基于环境隔离的高并发python算法调用方法与传统的算法部署模式相比,通过引入docker,事前将大量python算法部署到统一的docker服务中,并创建好所需环境,实现在一台物理机上部署上千python算法且环境隔离,再通过懒加载模式仅在系统内记录对应算法的索引,当用户在高并发调用时,系统通过索引触发消息,与传统的算法调用模式相比,通过消息队列将执行命令传输给对应的docker服务,再通过本地运行算法实现高效的执行,实现上十万上百万的大数据量并发,通过再次组建独立消息返回结果方式,解决因算法执行时间较长无法接收返回结果问题,极大的解决了在实际项目中因大数据量、高并发、需较长时间的计算等特性导致的无法调用问题,不仅节省了网络资源,同时提高了服务器性能。
实施例2
参见图2,本实施例提供了一种基于环境隔离的高并发python算法调用装置,包括:
算法脚本部署模块101,用于将python算法脚本部署到docker中;
消息队列搭建和接收模块102,用于搭建Kafka消息队列和接收消息;
算法调用模块103,用于调用所述python算法脚本中的python算法;
执行结果返回模块104,用于通过所述Kafka消息队列返回所述python算法的执行结果。
该装置用于执行上述基于环境隔离的高并发python算法调用方法,因而至少具有与该方法相对应的功能模块和有益效果。
实施例3
如图3所示,本实施例提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个所述处理器通信连接的存储器;其中,
所述存储器存储有可被至少一个所述处理器执行的指令,所述指令被至少一个所述处理器执行,以使至少一个所述处理器能够执行上述的方法。该电子设备中的至少一个处理器能够执行上述方法,因而至少具有与上述方法相同的优势。
可选地,该电子设备中还包括用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI(Graphical UserInterface,图形用户界面)的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器与多个存储器一起使用,和/或将多条总线与多个存储器一起使用。同样,可以连接多个电子设备(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统),各个设备提供部分必要的操作。图3中以一个处理器201为例。
存储器202作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的基于环境隔离的高并发python算法调用方法对应的程序指令/模块(例如,基于环境隔离的高并发python算法调用装置中的算法脚本部署模块101、消息队列搭建和接收模块102、算法调用模块103和执行结果返回模块104)。处理器201通过运行存储在存储器202中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的基于环境隔离的高并发python算法调用方法。
存储器202可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器202可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器202可进一步包括相对于处理器201远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
该电子设备还可以包括:输入装置203和输出装置204。处理器201、存储器202、输入装置203和输出装置204可以通过总线或者其他方式连接,图3中以通过总线连接为例。
输入装置203可接收输入的数字或字符信息,输出装置204可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
实施例4
本实施例提供了一种计算机可读存储介质,所述介质上存储有计算机指令,所述计算机指令用于使所述计算机执行上述的方法。该计算机可读存储介质上的计算机指令用于使计算机执行上述方法,因而至少具有与上述方法相同的优势。
本发明中的介质,可以采用一个或多个计算机可读的介质的任意组合。介质可以是计算机可读信号介质或者计算机可读存储介质。介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF(Radio Frequency,射频)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
应该理解的是,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (9)
1.一种基于环境隔离的高并发python算法调用方法,其特征在于,包括:
将python算法脚本部署到docker中;
搭建和接收Kafka消息队列;
调用所述python算法脚本中的python算法;
通过Kafka消息队列返回所述python算法的执行结果;
所述调用所述python算法脚本中的python算法包括:
根据消息传参获取待执行的算法名称和参数信息,根据算法名称通过懒加载从所述将python算法脚本部署到docker中建立的信息表中查询到部署这个算法的docker的ID信息,然后根据算法脚本调用工单携带的参数信息组建调用python的命令行语句。
2.根据权利要求1所述的调用方法,其特征在于,所述将python算法脚本部署到docker中包括:
根据python算法脚本,编写容器镜像文件dockerfile,创建包含不同语言版本的python基础环境的镜像;
将部署工单信息保存到mysql数据库中,所述部署工单信息包括脚本文件和脚本所需语言环境;
根据所述脚本所需语言环境,查找脚本部署所需的镜像;
根据所述脚本部署所需的镜像和所述脚本文件,组建命令行实现docker创建,然后启动docker容器服务,在启动docker容器服务的同时通过挂载路径方式将脚本文件传递到docker中。
3.根据权利要求2所述的调用方法,其特征在于,所述组建命令行实现docker创建,然后启动docker容器服务包括:
组建命令行实现docker创建;
根据脚本文件中的依赖版本文件requirement.txt,通过执行pipinstall–rrequirement.txt方式完善python脚本所需的执行环境;
启动docker容器服务。
4.根据权利要求1所述的调用方法,其特征在于,在所述将python算法脚本部署到docker中之后还包括:
记录docker的ID;
以算法名称作为KEY,所述ID作为VALUE,生成记录信息,将所述记录信息存储到mysql数据库和redis缓存数据库中。
5.根据权利要求1所述的调用方法,其特征在于,在所述将python算法脚本部署到docker中之后还包括:
获取修改后的脚本文件;
根据算法名称查找与所述算法名称相对应的部署docker的ID;
根据所述ID获取与所述ID相对应的docker,更新docker内的脚本文件和依赖版本文件requirement.txt,执行pipinstall–r requirement.txt更新python脚本所需的执行环境。
6.根据权利要求1所述的调用方法,其特征在于,所述通过Kafka消息队列返回所述python算法的执行结果包括:
搭建Kafka集群;
接收算法调用者发起的消息队列,所述消息队列中携带算法脚本调用工单;
对消息进行消费,在消费过程中,单起新线程去执行python算法的调用,在单线程中记录调用工单信息和消息队列的唯一编码,线程启动后,对消息队列直接返回接收成功;python算法调用的新线程执行完毕后,建立新的消息队列,返回执行结果和线程中记录的原消息队列的唯一编码至算法调用者。
7.一种基于环境隔离的高并发python算法调用装置,其特征在于,包括:
算法脚本部署模块,用于将python算法脚本部署到docker中;
消息队列搭建和接收模块,用于搭建Kafka消息队列并接收消息;
算法调用模块,用于调用所述python算法脚本中的python算法;
执行结果返回模块,用于通过Kafka消息队列返回所述python算法的执行结果;
所述调用所述python算法脚本中的python算法包括:
根据消息传参获取待执行的算法名称和参数信息,根据算法名称通过懒加载从所述将python算法脚本部署到docker中建立的信息表中查询到部署这个算法的docker的ID信息,然后根据算法脚本调用工单携带的参数信息组建调用python的命令行语句。
8.一种电子设备,其特征在于,包括:
至少一个处理器,以及与至少一个所述处理器通信连接的存储器;
其中,所述存储器存储有可被至少一个所述处理器执行的指令,所述指令被至少一个所述处理器执行,以使至少一个所述处理器能够执行权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述介质上存储有计算机指令,所述计算机指令用于使所述计算机执行权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111201141.6A CN113641343B (zh) | 2021-10-15 | 2021-10-15 | 基于环境隔离的高并发python算法调用方法及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111201141.6A CN113641343B (zh) | 2021-10-15 | 2021-10-15 | 基于环境隔离的高并发python算法调用方法及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113641343A CN113641343A (zh) | 2021-11-12 |
CN113641343B true CN113641343B (zh) | 2022-02-11 |
Family
ID=78427088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111201141.6A Active CN113641343B (zh) | 2021-10-15 | 2021-10-15 | 基于环境隔离的高并发python算法调用方法及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113641343B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017202258A1 (en) * | 2016-05-24 | 2017-11-30 | Huawei Technologies Co., Ltd. | Automated generation of deployment workflows for cloud platforms based on logical stacks |
CN109284184A (zh) * | 2018-03-07 | 2019-01-29 | 中山大学 | 一种基于容器化技术的分布式机器学习平台的搭建方法 |
CN109491859A (zh) * | 2018-10-16 | 2019-03-19 | 华南理工大学 | 针对Kubernetes集群中容器日志的收集方法 |
CN110134494A (zh) * | 2019-05-17 | 2019-08-16 | 四川长虹电器股份有限公司 | 一种基于Docker容器的容器自动化管理方法 |
-
2021
- 2021-10-15 CN CN202111201141.6A patent/CN113641343B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017202258A1 (en) * | 2016-05-24 | 2017-11-30 | Huawei Technologies Co., Ltd. | Automated generation of deployment workflows for cloud platforms based on logical stacks |
CN109284184A (zh) * | 2018-03-07 | 2019-01-29 | 中山大学 | 一种基于容器化技术的分布式机器学习平台的搭建方法 |
CN109491859A (zh) * | 2018-10-16 | 2019-03-19 | 华南理工大学 | 针对Kubernetes集群中容器日志的收集方法 |
CN110134494A (zh) * | 2019-05-17 | 2019-08-16 | 四川长虹电器股份有限公司 | 一种基于Docker容器的容器自动化管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113641343A (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109274731B (zh) | 基于多租户技术的web服务的部署、调用方法和装置 | |
US9596279B2 (en) | Cloud-based streaming data receiver and persister | |
US11663037B2 (en) | Service information processing method, apparatus, device and computer storage medium | |
WO2024077885A1 (zh) | 容器集群的管理方法、装置、设备及非易失性可读存储介质 | |
US11582285B2 (en) | Asynchronous workflow and task api for cloud based processing | |
US11144432B2 (en) | Testing and reproduction of concurrency issues | |
CN112835524A (zh) | 存储资源配置方法、存储资源控制器及调度系统 | |
CN112965761B (zh) | 一种数据处理方法、系统、电子设备及存储介质 | |
CN115421740A (zh) | 云原生应用的部署方法和装置 | |
CN110737510B (zh) | 块设备管理系统 | |
CN114911518A (zh) | 云函数应用发布管理方法、系统、设备及存储介质 | |
CN117112122A (zh) | 一种集群部署方法和装置 | |
CN110798358B (zh) | 分布式服务标识方法、装置、计算机可读介质及电子设备 | |
CN113641343B (zh) | 基于环境隔离的高并发python算法调用方法及介质 | |
CN112463251A (zh) | 一种uliweb框架配置热发布的方法和装置 | |
CN110730197B (zh) | 一种服务发现方法和系统 | |
CN111190731A (zh) | 基于权重的集群任务调度系统 | |
CN110019059B (zh) | 一种定时同步的方法和装置 | |
CN116049142A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN115469807A (zh) | 磁盘功能配置方法、装置、设备及存储介质 | |
WO2021243665A1 (zh) | 编译方法、编译装置、编译系统、存储介质与电子设备 | |
CN112559001B (zh) | 更新应用的方法和装置 | |
CN114281778A (zh) | 数据共享方法和装置 | |
CN112445820A (zh) | 数据转换方法及装置 | |
CN117112500B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |