CN109542791B - 一种基于容器技术的程序大规模并发评测方法 - Google Patents

一种基于容器技术的程序大规模并发评测方法 Download PDF

Info

Publication number
CN109542791B
CN109542791B CN201811423615.XA CN201811423615A CN109542791B CN 109542791 B CN109542791 B CN 109542791B CN 201811423615 A CN201811423615 A CN 201811423615A CN 109542791 B CN109542791 B CN 109542791B
Authority
CN
China
Prior art keywords
program
evaluation
test
container
mirror image
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
Application number
CN201811423615.XA
Other languages
English (en)
Other versions
CN109542791A (zh
Inventor
肖立成
钟金
何振远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Zhijing Technology Co Ltd
Original Assignee
Hunan Zhijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hunan Zhijing Technology Co Ltd filed Critical Hunan Zhijing Technology Co Ltd
Priority to CN201811423615.XA priority Critical patent/CN109542791B/zh
Publication of CN109542791A publication Critical patent/CN109542791A/zh
Application granted granted Critical
Publication of CN109542791B publication Critical patent/CN109542791B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种基于容器技术的程序大规模并发评测方法,针对现有程序评测技术领域的不足,对整个评测流程进行合理有效的分解、模块化及流水化设计,并使用容器为程序测评提供运行环境,使用Kubernetes进行容器集群管理,搭建私有镜像仓库、测评所需容器以及Gitlab服务器,构造评测脚本模板集,通过生成对应的评测脚本、评测执行容器环境Pod,拉取评测程序执行评测脚本,最终完成对程序的评定并返回结果,有效解决了传统评测方法的安全、资源配额和分配、用户空间隔离及自动化等问题,并通过合理的流程设计实现了评测过程的自动化,且通过对容器集群的个性化设置,实现了对大规模程序评测的稳定、高效支持。

Description

一种基于容器技术的程序大规模并发评测方法
技术领域
本发明属于程序评测应用技术领域,具体涉及一种基于容器技术的程序大规模并发评测方法。
背景技术
在互联网飞速发展的大背景下,计算机程序的重要性越来越显著。程序评测做为一种检测程序的正确性、效率等各方面属性的重要手段,在软件开发、代码分析及在线编程等领域的使用越来越广泛、深入。代码评测在软件开发中直接关系到产品的质量、生命周期及成本。而在线编程领域,如LeetCode、实验楼、CodeFights等在线编码平台,则直接依赖代码评测对用户的代码进行分析并给出反馈结果。同样,在代码分析领域,模糊测试、漏洞检测及性能分析等各个学术研究领域也需要程序评测的参与。
传统的程序评测需要在物理主机、虚拟机或云主机上完成源代码编辑、程序编译、执行、输入输出及指标分析等操作,这样一个复杂的过程其缺陷是很明显的。
首先是安全问题,主要包括资源安全和系统安全,用户的能力是参差不齐的,其编写的代码在执行时的具体行为也是不可控的,如用户的程序可能会出现死循环不断消耗内存和CPU资源、删除宿主机文件和目录、恶意删除或者停止宿主机关键服务及恶意木马、病毒植入等危险动作,这些动作很可能会对宿主机本身的正常运行造成严重影响;
其次是性能问题,单个评测请求其资源消耗不足以对宿主机造成影响,但是在某些情况下,比如在线编程平台上可能有大量用户同时在线从而会出现大量用户同时评测的情景,在这种情景下,大量的评测请求会给宿主机的内存和CPU资源造成巨大压力甚至造成宿主机崩溃,在单机的情况下,进行评测系统的能力扩展比较复杂且成本较高;
再者是并发和资源隔离问题,当有大量评测操作在并发进行会共享构建系统及系统的一些资源,因此,宿主机上会出现资源竞争、死锁等问题,同时,由于无法进行资源隔离,不同的评测操作之间也有可能会互相影响并影响最终的评测结果;
最后还存在自动化问题,评测过程是一个包括若干步骤且必须严格连贯的过程,能否实现评测的自动化、流水化是直接关系到评测效率的高低。
发明内容
为了克服现有技术应用领域中存在的不足,本发明提出了一种使用容器技术解决在高并发的情况下如何准确、稳定、高效且安全地对程序的正确性、效率等进行评测的基于容器技术的程序大规模并发评测方法。
一种基于容器技术的程序大规模并发评测方法,包括以下步骤:
S1:搭建Kubernetes集群;
所述Kubernetes集群包括多个服务器节点,各服务器节点上分别设置有SSH、Git服务,在Kubernetes的一个服务器节点上设有一个用于管理待测评程序的Gitlab服务器,所述Gitlab服务器包括用于储存程序的代码仓库;
S2:生成程序评测运行所需的容器;
S201,由Gitlab服务器接收用户的待测评程序,将待测评程序的代码储存到代码仓库中并标示与用户身份信息相关的标识,从存放在web服务器数据库中的评测脚本集中选出和待评测程序类型对应的评测脚本模板,根据当次评测的工作目录及评测发起者的身份标识信息,生成专属评测脚本,并作为参数发出程序评测请求;
S202,从程序评测请求中提取出携带的评测脚本后,将其写入磁盘中作为程序评测的评测脚本;从程序评测请求中提取出评测执行所用Pod的各个属性生成Kubernetes的Pod定义信息;
S203,根据Pod定义信息在Kubernetes集群的节点上,从私有镜像仓库中拉取Docker镜像创建Pod,生成程序评测具体运行所在的容器;
S3:在容器内进行程序测评;
所述容器使用Git服务从代码仓库中拉取待测评程序的代码到容器中的工作目录,在容器中对待测评的程序执行评测脚本,并返回评测脚本执行的结果,当有新的待测评程序请求测评时,重复执行S2-S3。
进一步地,S1中所述Kubernetes集群是使用物理主机或者云主机做为节点搭建的。
进一步地,S1中所述Gitlab服务器在一个云主机或者物理主机上搭建,所述Gitlab服务器的代码仓库用于储存待测评程序的代码,所述代码仓库与用户身份标识相对应。
进一步地,S202中所述磁盘空间和评测任务一一对应。
进一步地,S202中所述Pod的各个属性包括挂载目录、Docker镜像类型,资源配额限制参数。
进一步地,S202中Pod定义信息由评测程序的类型及评测请求的发起用户信息形成,不同的评测类型对应不同的Docker镜像类型,同时不同的发起评测用户对应着不同的工作目录即Pod挂载目录。
进一步地,所述容器为Docker。
进一步地,在S203中,所述私有镜像仓库是由公有镜像仓库Docker hub提供的registry镜像搭建而成,Docker hub由Docker官方提供,Docker镜像根据需要由Dockerfile定义,已有的Docker镜像被推送到私有镜像仓库中进行管理,所述测评所需容器是通过在私有镜像仓库中拉取与程序类型相对应的Docker镜像生成的,所述Docker镜像将程序的运行环境及依赖打包以适应不同的程序环境。
进一步地,还包括S4,收到脚本执行结果后,从编译结果、运行结果中分析程序的正误、效率,将程序实际输出与预期输出进行比对,完成对程序的正确性、效率的分析,从而得到评测的具体结果。
与现有技术相比,本发明的有益效果为:
本发明一种基于容器技术的程序大规模并发评测方法,适用于需要进行代码评测的各种应用场景。由于Kubernetes集群系统除具备容器的特点外,还有副本控制、资源配额等特性,能够实现容器集群的负载均衡、任务分发、资源配额及安全控制等功能,且本身扩展性好,便于扩展集群的负载能力;本发明通过使用容器技术,将程序应用及其依赖打包成镜像从而增加了可移动性,并且容器技术提供用户空间隔离,即运行在容器中的程序应用不会共享宿主机的内存、CPU及磁盘等资源,从而对于宿主机来说更为安全,解决了传统评测方法的安全;有效规避了用户空间隔离及自动化等问题,并通过有效合理的流程设计实现了评测过程的自动化,同时,通过对容器集群的个性化设置,实现了对大规模程序评测的稳定、高效支持。
附图说明
图1为本发明的流程图;
图2为某一用户发出评测请求并使用本发明进行评测的流程图。
具体实施方式
下面将结合本发明的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的仅仅是本发明一部分实施例,而不是全部的实施例。
图1和图2示出了本发明基于容器技术的程序大规模并发评测方法的一种实施例,通过以下步骤实现:
S1,搭建Kubernetes集群;
Kubernetes集群包括多个服务器节点,各服务器节点上设置有SSH、Git服务,在Kubernetes集群的一个服务器节点上设有一个用于管理待测评程序的Gitlab服务器,Gitlab服务器包括用于储存程序的代码仓库。Kubernetes集群是使用物理主机或者云主机做为节点搭建的,所述Kubernetes集群上设有N个服务器节点,Node1,Node2,…,NodeN,N∈Z,分别在Node1、Node2、…、NodeN各服务器节点上安装SSH、Git服务。SSH是一种加密的网络传输协议,SSH服务通过在网络中创建安全隧道,来实现SSH客户端与服务器之间的连接,从而允许远程登录到集群中以便于管理。Git是一个分布式版本管理软件,Git服务提供了方便的代码版本控制及存储等途径,通过Git将当前待评测的程序从Gitlab服务器推送至测评所需容器,Gitlab对用户的代码进行合理有效地托管,Gitlab提供了远程通过Git使用Git命令工具获取用户代码的便捷、有效的方式。Gitlab服务器在Kubernetes集群的一个节点上搭建,Gitlab服务器是开源的且能提供自托管的Git项目仓库的服务器,该服务器使用云主机或者物理主机,Gitlab服务器的代码仓库储存待测评程序的代码,搭建好的Gitlab服务器对用户的代码进行托管,并且代码仓库与用户身份标识相对应。
S2,生成程序评测运行所需的容器;
S201,由Gitlab服务器接收用户的待测评程序,将待测评程序的代码储存到代码仓库中并标示与用户身份信息相关的标识,从存放在web服务器数据库中的评测脚本集中选出和待评测程序类型对应的评测脚本模板,根据当次评测的工作目录及评测发起者的身份标识信息,生成专属评测脚本,并作为参数发出程序评测请求;各个不同类型评测所对应的的评测脚本需要事先编写好,然后存放在数据库中形成脚本集,放在web服务器的数据库,web服务器为用户提供网页界面,用户在发起评测时可以根据评测类型去选择对应的评测脚本。评测脚本由Shell编程语言编写而成,在评测脚本中封装有源代码获取、输入输出重定向、编译、运行及结果比对操作,评测脚本包括具有与对应的程序语言的Java、Python、C++、C、Scala、PHP、Ruby编译和运行脚本。对应于不同类型的评测如Java、Python、C++、C等,本发明均会为其制作评测脚本模板,多种类型的模板形成一个模板集,对应某次具体的评测请求时,在与其相对应的评测脚本模板的基础上,通过设定不同的工作空间及评测发起者的身份标识信息生成该次评测的专属评测脚本,然后作为参数传输给负责程序评测的后台。评测请求包含的信息有用户身份Id、评测类型、Gitlab上的代码仓库地址、评测所用到的脚本及评测环境要求等信息。
S202,从程序评测请求中提取出携带的评测脚本后,将其写入磁盘中作为程序评测的评测脚本;磁盘空间和评测任务一一对应,从程序评测请求中提取出评测执行所用Pod的各个属性生成Kubernetes的Pod定义信息;Pod的属性信息包括挂载目录、Docker镜像类型,资源配额限制等参数。Pod定义信息由评测程序的类型及评测请求的发起用户信息形成,不同的评测类型对应不同的Docker镜像类型,同时不同的发起评测用户也对应着不同的工作目录即Pod挂载目录。
S203,根据Pod定义信息在Kubernetes集群的节点上,从私有镜像仓库中拉取Docker镜像创建Pod,生成程序评测具体运行所在的容器;根据评测请求中对应的参数信息,从容器的资源配额、挂载目录完成对评测运行空间的设定,再使用配置信息通过Kubernetes接口生成容器时即可完成容器配置。所讲的容器为Docker,Kubernetes的容器编排功能会将容器集合组合成Pod以进行统一的管理。
S3:在容器内进行程序测评;
所述容器内有评测脚本,所述容器使用Git服务从代码仓库中拉取待测评程序的代码到容器中的工作目录,在容器中对待测评的程序执行评测脚本,并返回评测脚本执行的结果,当有新的待测评程序请求测评时,重复执行S2-S3。私有镜像仓库是由公有镜像仓库(Docker hub)提供的registry镜像搭建而成,Docker hub由Docker官方提供,Docker镜像根据需要由Dockerfile定义,Dockerfile是Docker提供的或者说自带的Docker容器定义文件类型,将已有的Docker镜像被推送到私有镜像仓库中进行管理,并将运行环境及依赖打包成Docker镜像,所述测评所需容器是通过在私有镜像仓库中拉取与程序类型相对应的Docker镜像生成的,所述Docker镜像将程序的运行环境及依赖打包以适应不同的程序环境。
S4,收到脚本执行结果后,从编译结果、运行结果中分析程序的正误、效率,将程序实际输出与预期输出进行比对,完成对程序的正确性、效率的分析,从而得到评测的具体结果。
对应每次程序评测请求,根据评测请求中携带的环境、工作目录及资源配额信息,在创建Pod时限定Pod的Docker镜像类型、资源使用及读写目录,容器生成之后即可完成对评测执行环境的限定,之后通过Kubernetes提供的接口或exec命令在Pod中执行评测脚本,最后返回评测脚本的执行结果。
本发明通过使用容器技术,将程序应用及其依赖打包成镜像从而增加了可移动性,并且容器技术提供用户空间隔离,即运行在容器中的程序应用不会共享宿主机的内存、CPU及磁盘等资源,从而对于宿主机来说更为安全,解决了传统评测方法的安全;有效规避了用户空间隔离及自动化等问题,并通过有效合理的流程设计实现了评测过程的自动化,同时,通过对容器集群的个性化设置,实现了对大规模程序评测的稳定、高效支持。
图2给出了用户U1编写的代码发出的评测请求通过本方法所执行的流程步骤图。程序语言类型为Java,容器集群有三个节点Node1、Node2、Node3,下面的步骤以完成用户U1的一次Java语言程序的评测为例进行说明。
步骤1:将用户U1编写的代码推送至Gitlab服务器进行托管,同时从评测脚本集中取出对应的评测脚本模板生成专属评测脚本作为参数发出程序评测请求;
步骤2:根据该测评程序请求的参数,提取出评测执行所用Pod的各个属性信息,并通过Kubernetes提供的接口生成满足要求的Pod,为评测提供容器环境;
步骤3:根据该测评程序请求中携带的评测脚本,获取评测脚本之后将脚本写入到该评测请求对应的工作空间;
步骤4:使用Git从Gitlab服务器拉取U1编写的代码到容器中;
步骤5:在容器中执行评测脚本,完成U1的代码的编译、运行,并将运行结果返回给宿主机;
步骤6:宿主机收到脚本执行结果后分析程序的运行结果,得到U1此次代码的评测情况并予以反馈。
以下为本发明的评测脚本:
以上实施例可以反映出本发明可以很好地实现程序评测的模块化和流水化,便于自动化评测流程的实现,而且,在容器集群中使用容器做为运行环境,便于负载均衡和系统容量扩展。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。

Claims (9)

1.一种基于容器技术的程序大规模并发评测方法,其特征在于:包括以下步骤:S1:搭建Kubernetes集群;
所述Kubernetes集群包括多个服务器节点,各服务器节点上分别设置有SSH、Git服务,在Kubernetes的一个服务器节点上设有一个用于管理待测评程序的Gitlab服务器,所述Gitlab服务器包括用于储存程序的代码仓库;
S2:生成程序评测运行所需的容器;
S201,由Gitlab服务器接收用户的待测评程序,将待测评程序的代码储存到代码仓库中并标示与用户身份信息相关的标识,从存放在web服务器数据库中的评测脚本集中选出和待测评程序类型对应的评测脚本模板,根据当次评测的工作目录及评测发起者的身份标识信息,生成专属评测脚本,并作为参数发出程序评测请求;
S202,从程序评测请求中提取出携带的评测脚本后,将其写入磁盘空间中作为程序评测的评测脚本;从程序评测请求中提取出评测执行所用Pod的各个属性生成Kubernetes的Pod定义信息;
S203,根据Pod定义信息在Kubernetes集群的节点上,从私有镜像仓库中拉取Docker镜像创建Pod,生成程序评测具体运行所在的容器;
S3:在容器内进行程序测评;
所述容器使用Git服务从代码仓库中拉取待测评程序的代码到容器中的工作目录,在容器中对待测评的程序执行评测脚本,并返回评测脚本执行的结果,当有新的待测评程序请求测评时,重复执行S2-S3。
2.根据权利要求1所述的一种基于容器技术的程序大规模并发评测方法,其特征在于,S1中所述Kubernetes集群是使用物理主机或者云主机做为节点搭建的。
3.根据权利要求1所述的一种基于容器技术的程序大规模并发评测方法,其特征在于:S1中所述Gitlab服务器在一个云主机或者物理主机上搭建,所述Gitlab服务器的代码仓库用于储存待测评程序的代码,所述代码仓库与用户身份标识相对应。
4.根据权利要求3所述的一种基于容器技术的程序大规模并发评测方法,其特征在于:S202中所述磁盘空间和评测任务一一对应。
5.根据权利要求4所述的一种基于容器技术的程序大规模并发评测方法,其特征在于:S202中所述Pod的各个属性包括挂载目录、Docker镜像类型,资源配额限制参数。
6.根据权利要求5所述的一种基于容器技术的程序大规模并发评测方法,其特征在于:S202中Pod定义信息由评测程序的类型及评测请求的发起用户信息形成,不同的评测类型对应不同的Docker镜像类型,同时不同的发起评测用户对应着不同的工作目录即Pod挂载目录。
7.根据权利要求1-6任一项所述的一种基于容器技术的程序大规模并发评测方法,其特征在于,所述容器为Docker。
8.根据权利要求7所述的一种基于容器技术的程序大规模并发评测方法,其特征在于,在S203中,所述私有镜像仓库是由公有镜像仓库Docker hub提供的registry镜像搭建而成,Docker hub由Docker官方提供,Docker镜像根据需要由Dockerfile定义,已有的Docker镜像被推送到私有镜像仓库中进行管理,所述测评所需容器是通过在私有镜像仓库中拉取与程序类型相对应的Docker镜像生成的,所述Docker镜像将程序的运行环境及依赖打包以适应不同的程序环境。
9.根据权利要求8所述的一种基于容器技术的程序大规模并发评测方法,其特征在于:还包括S4,收到脚本执行结果后,从编译结果、运行结果中分析程序的正误、效率,将程序实际输出与预期输出进行比对,完成对程序的正确性、效率的分析,从而得到评测的具体结果。
CN201811423615.XA 2018-11-27 2018-11-27 一种基于容器技术的程序大规模并发评测方法 Active CN109542791B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811423615.XA CN109542791B (zh) 2018-11-27 2018-11-27 一种基于容器技术的程序大规模并发评测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811423615.XA CN109542791B (zh) 2018-11-27 2018-11-27 一种基于容器技术的程序大规模并发评测方法

Publications (2)

Publication Number Publication Date
CN109542791A CN109542791A (zh) 2019-03-29
CN109542791B true CN109542791B (zh) 2019-11-29

Family

ID=65850777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811423615.XA Active CN109542791B (zh) 2018-11-27 2018-11-27 一种基于容器技术的程序大规模并发评测方法

Country Status (1)

Country Link
CN (1) CN109542791B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112148419B (zh) * 2019-06-28 2024-01-02 杭州海康威视数字技术股份有限公司 云平台中镜像管理方法、装置、系统及存储介质
CN110516934A (zh) * 2019-08-13 2019-11-29 湖南智擎科技有限公司 基于可伸缩集群的智能化大数据实训方法及系统
CN110688201B (zh) * 2019-09-29 2022-06-28 重庆小雨点小额贷款有限公司 一种日志管理方法及相关设备
CN111131449B (zh) * 2019-12-23 2021-03-26 华中科技大学 一种水资源管理系统服务集群化框架构建方法
CN113468040A (zh) * 2020-03-30 2021-10-01 嘉楠明芯(北京)科技有限公司 程序评测方法、装置及计算机可读存储介质
CN111459619A (zh) * 2020-04-07 2020-07-28 合肥本源量子计算科技有限责任公司 一种基于云平台实现服务的方法和装置
CN111459841A (zh) * 2020-04-30 2020-07-28 成都海纳智博科技有限公司 一种通用程序语言自动评测方法及系统
CN111984373B (zh) * 2020-08-19 2023-07-07 昆山旌展信息科技有限公司 一种Kubernetes容器环境下保证环境一致性的方法及系统
CN112764760B (zh) * 2021-01-25 2023-12-26 中国科学院自动化研究所 基于程序评测的辅助答题系统
CN113238928B (zh) * 2021-04-23 2022-05-06 杭州电子科技大学 一种音视频大数据任务的端云协同评测系统
CN113806022B (zh) * 2021-11-17 2022-03-15 广西梯度科技有限公司 基于Kubernetes上传容器镜像文件到容器镜像仓库的方法及装置
CN114490419B (zh) * 2022-02-16 2024-02-13 湖南智擎科技有限公司 异质架构的跨云测试方法、系统和计算机设备
CN114996117B (zh) * 2022-03-28 2024-02-06 湖南智擎科技有限公司 面向SaaS模式的客户端GPU应用评测系统及方法
CN115794660B (zh) * 2023-02-06 2023-05-16 青软创新科技集团股份有限公司 一种基于分布式程序评测的控制方法、装置及系统
CN115827008B (zh) * 2023-02-14 2023-05-12 北京邮电大学 一种基于云原生平台Kubernetes的云原生大数据组件管理系统

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224466A (zh) * 2015-11-17 2016-01-06 广州亦云信息技术有限公司 一种基于Docker的集成测试方法及系统
CN105357067A (zh) * 2015-10-14 2016-02-24 广州杰赛科技股份有限公司 一种云平台的测试方法及系统
CN105743995A (zh) * 2016-04-05 2016-07-06 北京轻元科技有限公司 一种可移植高可用部署和管理容器集群的系统和方法
CN105760167A (zh) * 2016-02-23 2016-07-13 浪潮软件集团有限公司 一种基于Docker的持续集成方法
CN106888254A (zh) * 2017-01-20 2017-06-23 华南理工大学 一种基于Kubernetes的容器云架构及其各模块之间的交互方法
CN106953910A (zh) * 2017-03-17 2017-07-14 郑州云海信息技术有限公司 一种Hadoop计算存储分离方法
CN107562472A (zh) * 2017-08-24 2018-01-09 四川长虹电器股份有限公司 基于docker容器的微服务系统及方法
CN108255716A (zh) * 2018-01-10 2018-07-06 天津理工大学 一种基于云计算技术的软件测评方法
CN108694117A (zh) * 2017-04-11 2018-10-23 北京京东尚科信息技术有限公司 基于容器技术的管理测试环境的方法和装置
CN108733553A (zh) * 2017-04-18 2018-11-02 北京嘀嘀无限科技发展有限公司 基于docker的测试装置的配置方法、装置和系统
CN108737168A (zh) * 2018-05-08 2018-11-02 深圳大学 一种基于容器的微服务架构应用自动构建方法
CN108829588A (zh) * 2018-05-30 2018-11-16 北京顺丰同城科技有限公司 一种测试应用程序的处理方法、部署系统及装置
CN108848157A (zh) * 2018-06-12 2018-11-20 郑州云海信息技术有限公司 一种Kubernetes集群容器监控的方法和装置
CN108845949A (zh) * 2018-07-24 2018-11-20 浙江数链科技有限公司 一种性能测试方法及平台
CN108874650A (zh) * 2017-05-09 2018-11-23 上海秦苍信息科技有限公司 一种持续集成自动化测试方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106873975B (zh) * 2016-12-30 2020-09-29 武汉默联股份有限公司 基于Docker的devops持续交付与自动化系统及方法
CN106850621A (zh) * 2017-02-07 2017-06-13 南京云创大数据科技股份有限公司 一种基于容器云技术快速搭建Hadoop集群的方法
CN108038051A (zh) * 2017-11-03 2018-05-15 深圳市牛鼎丰科技有限公司 微服务的发布方法、装置、计算机设备和存储介质
CN108021428A (zh) * 2017-12-05 2018-05-11 华迪计算机集团有限公司 一种基于Docker实现网络靶场的方法和系统
CN108345535B (zh) * 2017-12-26 2022-03-04 创新先进技术有限公司 mock测试方法、装置及设备

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105357067A (zh) * 2015-10-14 2016-02-24 广州杰赛科技股份有限公司 一种云平台的测试方法及系统
CN105224466A (zh) * 2015-11-17 2016-01-06 广州亦云信息技术有限公司 一种基于Docker的集成测试方法及系统
CN105760167A (zh) * 2016-02-23 2016-07-13 浪潮软件集团有限公司 一种基于Docker的持续集成方法
CN105743995A (zh) * 2016-04-05 2016-07-06 北京轻元科技有限公司 一种可移植高可用部署和管理容器集群的系统和方法
CN106888254A (zh) * 2017-01-20 2017-06-23 华南理工大学 一种基于Kubernetes的容器云架构及其各模块之间的交互方法
CN106953910A (zh) * 2017-03-17 2017-07-14 郑州云海信息技术有限公司 一种Hadoop计算存储分离方法
CN108694117A (zh) * 2017-04-11 2018-10-23 北京京东尚科信息技术有限公司 基于容器技术的管理测试环境的方法和装置
CN108733553A (zh) * 2017-04-18 2018-11-02 北京嘀嘀无限科技发展有限公司 基于docker的测试装置的配置方法、装置和系统
CN108874650A (zh) * 2017-05-09 2018-11-23 上海秦苍信息科技有限公司 一种持续集成自动化测试方法
CN107562472A (zh) * 2017-08-24 2018-01-09 四川长虹电器股份有限公司 基于docker容器的微服务系统及方法
CN108255716A (zh) * 2018-01-10 2018-07-06 天津理工大学 一种基于云计算技术的软件测评方法
CN108737168A (zh) * 2018-05-08 2018-11-02 深圳大学 一种基于容器的微服务架构应用自动构建方法
CN108829588A (zh) * 2018-05-30 2018-11-16 北京顺丰同城科技有限公司 一种测试应用程序的处理方法、部署系统及装置
CN108848157A (zh) * 2018-06-12 2018-11-20 郑州云海信息技术有限公司 一种Kubernetes集群容器监控的方法和装置
CN108845949A (zh) * 2018-07-24 2018-11-20 浙江数链科技有限公司 一种性能测试方法及平台

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
An Empirical Analysis of the Docker Container Ecosystem on GitHub;Jurgen Cito 等;《2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR)》;20170521;323-333 *
Enabling Docker Containers for High-Performance and Many-Task Computing;Abdulrahman Azab;《2017 IEEE International Conference on Cloud Engineering》;20170407;279-285 *
企业开发、测试环境快速部署方案的设计与实现;徐星 等;《工业控制计算机》;20180331;第31卷(第3期);12-14 *
基于Docker实现在线评测系统的安全性;李芙玲 等;《华北科技学院学报》;20181031;第15卷(第5期);95-100 *
基于Docker的分布式程序判定系统设计与实现;舒新峰 等;《计算机技术应用》;20180630;第37卷(第6期);140-143 *

Also Published As

Publication number Publication date
CN109542791A (zh) 2019-03-29

Similar Documents

Publication Publication Date Title
CN109542791B (zh) 一种基于容器技术的程序大规模并发评测方法
CN110309071B (zh) 测试代码的生成方法及模块、测试方法及系统
US10162612B2 (en) Method and apparatus for inventory analysis
US11755919B2 (en) Analytics for an automated application testing platform
CN107562626B (zh) 一种封装Selenium和Sikuli实现Web自动化测试的方法
US9792203B2 (en) Isolated testing of distributed development projects
Casanova et al. Developing accurate and scalable simulators of production workflow management systems with wrench
US20210311858A1 (en) System and method for providing a test manager for use with a mainframe rehosting platform
US10678666B1 (en) Method and system for implementing automated test and retest procedures in a virtual test environment
US10303517B1 (en) Automated evaluation of computer programming
US20120254665A1 (en) Generation of functional tests for re-hosted applications
CN104954453A (zh) 基于云计算的数据挖掘rest服务平台
Aronis et al. A scalability benchmark suite for Erlang/OTP
Wang et al. A model-based framework for cloud API testing
Remenska et al. Using model checking to analyze the system behavior of the LHC production grid
CN109743233A (zh) 一种对强身份认证系统进行数据采集的方法及计算机设备
Ochei et al. Evaluating degrees of multitenancy isolation: A case study of cloud-hosted gsd tools
Liang et al. Mystique: Enabling accurate and scalable generation of production ai benchmarks
CN112559343B (zh) 测试路径生成方法及相关设备
CN114721932A (zh) 一种数据处理方法、装置、设备及存储介质
Samples et al. Parameter sweeps for exploring GP parameters
CN116719735A (zh) 一种测试用例生成方法及装置
Coleman et al. Automated generation of scientific workflow generators with WfChef
Tsai et al. Pewss: A platform of extensible workflow simulation service for workflow scheduling research
Patil Design and implementation of combinatorial testing based test suites for operating systems used for internet of things

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
CB02 Change of applicant information

Address after: 410000 Room 201, 13 Building, Changsha Zhongdian Software Park Phase I, 39 Jianshan Road, Changsha High-tech Development Zone, Hunan Province

Applicant after: Hunan Zhijing Technology Co., Ltd.

Address before: 410000 No. 167, F26 Shop, Lugu Linyu District, 408 Tongzipo West Road, Changsha High-tech Development Zone, Hunan Province

Applicant before: Changsha Zhi Qing Information Technology Co., Ltd.

CB02 Change of applicant information
CB03 Change of inventor or designer information

Inventor after: Xiao Licheng

Inventor after: Zhong Jin

Inventor after: He Zhenyuan

Inventor before: Yin Gang

Inventor before: Zhong Jin

Inventor before: He Zhenyuan

Inventor before: Xiao Licheng

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant