Tag: 并行处理

Docker组合和并发集成testing

编辑:对不起,我错了这个问题的第一部分。 所以我有一个docker-compose.yaml在同步运行时工作正常: server: build: . dockerfile: "./docker/integration_tests/server/Dockerfile" links: – mongo environment: – "MONGO_URI=mongodb://mongo:27017/company" mongo: image: 'mongo:3.2.6' ports: – "27017" 当用这个命令启动时: docker-compose build && docker-compose up –abort-on-container-exit 然而,当我启动两三个工作来testing它是否并行工作(这是jenkins使用pipe道,所以他们有不同的目录)我看到这个工作A: Successfully built 7b23b3a7b823 + docker-compose up –abort-on-container-exit Creating companyservercicd3_mongo_1 ERROR: for mongo Cannot start service mongo: driver failed programming external connectivity on endpoint companyservercicd3_mongo_1 (422826f73ce76526e4072f72a2b44467f9080e79a24d37d1fe2bba903854a698): Bind for 0.0.0.0:27017 […]

启动许多Docker容器时性能下降

我构build了一个Web应用程序,为初学者提供了一个基于Web的编程环境。 用户代码在Docker容器中执行。 该应用程序基于Rails,并使用docker-api gem来访问Docker的Remote API 。 虽然Docker应该提供一个相当可扩展的平台来并行执行许多用户的代码,但是当使用JMeter加载应用程序时,响应时间将会一帆风顺。 CPU和内存都不是瓶颈。 使用New Relic,我可以看到与Docker的socket的通信占用了特定控制器方法( 链接 )的99%的时间。 当我在加载testing期间尝试调用docker ps时,必须等待几秒钟才能返回命令。 使用Docker CLI的实验显示了相同的行为。 所有容器启动后,可以并行执行几个长时间运算。 相比之下,许多短期运行的计算并不是平行的,因为在启动容器时似乎有问题。 Docker不可能并行启动容器吗?

背景OpenCpu R在Docker中的过程

我在OpenCPU / Docker中运行R脚本,并寻找如何运行脚本来创build后台进程,并返回进程已启动的消息。 像这样的东西: fun1<-function(arg1,arg2){ #calling different function to run in background, using arg1/arg2, no need #of result now, I will check the result through the file later fun2(arg1,arg2) return('Process has started') } 我如何在后台运行fun2? 所有的function都在包内,我试过Rscript,但没有成功。 任何想法或包? 我相信很多人已经通过这个。

如何使分布在许多主机上的opencv处理

我正在使用大量使用CPU的opencv应用程序。 我想分配帧处理,以便在多个主机之间共享。 这个想法与http://cloudcv.org/中的实现相同。 但问题是,你只能发送你的请求到他们的服务器来testing分布式image processing。 我在互联网上search了很长时间,我想知道是否可以实现opencv + Docker Swarm,或者opencv + Apache Spark,或者是否有其他方法来实现它。 我的代码在opencv中处理帧以检测其中的人,我想让它在多个主机上执行以最大化速度: while(true) { webcam.read(image); //human detection————————————– cv::Mat resized_image; cv::resize(image, resized_image, Size(image.cols / 2, image.rows / 2), 0, 0, INTER_LINEAR); vector<Rect> found, found_filtered; // this line uses hog descriptor to detect // people body pattern in the frmaes // found is a vector of […]

使用Docker,使用Selenium和Pytest来运行并行testing

我试图用这些所有的东西在一个无头的铬中运行并行testing: Docker,Selenium,Pytest 但是,我想知道在哪里运行系统的并行部分是有意义的? Docker可以做到这一点(使用selenium网格)。 这两个可以用来运行并行(和分布式)seleniumtesting。 例如 https://github.com/elgalu/docker-selenium https://github.com/zalando/zalenium 另外Pytest有自己的方式来运行并行testing(使用pytest-xdist) http://pytest.org/dev/xdist.html 运行10个并行pytest-xdist比运行10个docker容器更容易吗? 我将不胜感激找出每个的优点/缺点。 另外,任何想法如何一起使用这些东西? 有关这方面的信息似乎很稀疏。

Shell脚本 – “等待”不等待所有进程完成

在shell脚本中,我正在构build一些docker镜像(在后台),一旦完成,我正在运行它们(在后台),然后我必须等待所有这些完成。 代码如下所示: for tag in "${tags[@]}" do docker build -f dockerFilePath -t $tag . & done wait for tag in "${tags[@]}" do docker run $tag arg1 arg2 | tee logoutput & done wait 问题是不是第二个等待部分中的所有docker run命令都能够完成。 docker运行命令需要不同的时间才能完成,其中任何一个都是不完整的(总共4个)。 此外,我读了这个等待只适用于进程调用wait的直接subprocess,在这种情况下,我认为所有的docker build和docker run命令都是脚本进程的直接subprocess。 或者是错误的假设?