首页 > 其他分享 >【小实验】使用 wrk 的 docker 容器来压测另一个容器

【小实验】使用 wrk 的 docker 容器来压测另一个容器

时间:2023-06-01 18:01:01浏览次数:49  
标签:容器 name 压测 wrk -- docker

作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢!


想压测容器环境的服务性能,发现两个麻烦:

  • 本地使用 wrk,由于本地网络和容器服务器很远,压测效果不好;
  • wrk 找不到一个独立的二进制版本可以下载;go-wrk 完全不可用。

然后发现 hub.docker.com 上有 wrk 的镜像。
于是用下面的方法启动容器进行压测:
pod_wrk.yaml

apiVersion: v1
kind: Pod
metadata:
  name: wrk
  labels:
    app.kubernetes.io/name: proxy
spec:
  containers:
  - name: wrk
    image: williamyeh/wrk:4.0.2   # hub.docker.com 上的镜像
    command: ["/usr/local/bin/wrk"]
    args: ["-t10","-c600","-d120s","--latency","-H","X-Forwarded-proto: http","-H","X-Forwarded-For: 220. xxx.1.xxx,xxxx","-H","Host: 1.a.com","http://xx.xxx.0.71:32101/abc?size=10"]
    resources:
      requests:
        memory: "512Mi"
        cpu: "2"
      limits:
        memory: "2048Mi"
        cpu: "2"

然后用下面的方法启动容器:

kubectl apply -f stress_test/pod_wrk.yaml --namespace=my-test-devops

压测时间是 120 秒,过后容器会再次启动。不需要压测的时候可以这样删除:

kubectl delete pods wrk --namespace=my-test-devops

Have fun.

标签:容器,name,压测,wrk,--,docker
From: https://www.cnblogs.com/ahfuzhang/p/17449791.html

相关文章

  • 容器工厂
    一、通过工厂+反射+配置文件创建对象简单的说就是以后我们不用自己new对象了,对象的实例化都交给工厂来完成,我们需要对象的时候直接问工厂拿一个就行,一会我们会来看一个例子。在这里有一点要说明,springIOC与工厂模式并不是完全相同的,最大的不同在于普通的工厂模式内部还是使用new......
  • 小程序容器助力航空企业数字化转型
    数字化时代,越来越多的企业开始关注数字技术,希望通过数字化改造提高企业效率和竞争力,为企业创造更多的商机和利润。今天就来同大家探讨航空领域,小程序在企业数字化转型中发挥的作用。航空业员工端App的敏捷转型挑战技术上的挑战:多平台兼容性: 航空公司的员工使用不同的设备和操作系......
  • 小程序容器助力航空企业数字化转型
    数字化时代,越来越多的企业开始关注数字技术,希望通过数字化改造提高企业效率和竞争力,为企业创造更多的商机和利润。今天就来同大家探讨航空领域,小程序在企业数字化转型中发挥的作用。航空业员工端App的敏捷转型挑战技术上的挑战:多平台兼容性: 航空公司的员工使用不同的设备和操......
  • K8s Pod状态与容器探针
    1、pod的调度流程及常见状态1.1、pod的调度流程Pod创建过程如上图所示,首先用户向apiserver发送创建pod的请求,apiserver收到用于创建pod请求后,对应会对该用户身份信息进行验证,该用户是否是合法的用户,是否具有创建pod的权限,如果能够通过apiserver的验证,则进行下一步,对用户提交的......
  • 新型探索:React Native与小程序容器技术的结合
    ReactNative是由Facebook开发并于2015年首次发布的一个框架,用于构建原始的移动应用程序。它具有许多技术上的优势:跨平台开发:使用ReactNative,您可以使用相同的代码库构建同时运行在iOS和Android平台上的应用程序。这种跨平台的开发方式可以大大减少开发工作量和时间成本,因为您不需......
  • 小程序容器助力构建新型超级App软件应用架构
    所谓软件架构,就是软件系统的骨骼与框架。近年来,软件及开源技术迅猛发展,软件应用架构的概念也愈加普遍。它提供了一种组织和设计软件系统的有效方法,具有许多优势和好处:模块化和可维护性:软件应用架构将系统拆分为模块化的组件,每个组件负责特定的功能或任务。这种模块化的设计使得系统......
  • kubernetes(k8s)大白学习02:容器和docker基础、使用、架构学习
    一、什么是容器容器简介简单说:容器(container)就是计算机上的一个沙盒进程,它与计算机上的所有其它进程相隔离。这种隔离是怎么做到的呢?它利用了内核提供的namespace和cgroup这2种技术。这些技术能力在Linux中已经存在了很长时间。而Docker或容器技术致力于将这些功能更......
  • ThreadLocal 详解【并发容器】
    ThreadLocal是什么?有哪些使用场景?ThreadLocal是一个本地线程副本变量工具类,在每个线程中都创建了一个ThreadLocalMap对象,简单说ThreadLocal就是一种以空间换时间的做法,每个线程可以访问自己内部ThreadLocalMap对象内的value。通过这种方式,避免资源在多线程间共享。原理:......
  • React Native+小程序容器=更高的开发效率
    ReactNative是由Facebook开发并于2015年首次发布的一个框架,用于构建原始的移动应用程序。它具有许多技术上的优势:跨平台开发:使用ReactNative,您可以使用相同的代码库构建同时运行在iOS和Android平台上的应用程序。这种跨平台的开发方式可以大大减少开发工作量和时间成本,因为......
  • Jenkins(单独部署非容器版本)配置k8s【转】
    一、安装kubernetes插件1.在插件管理里面搜索kubernetes,如下图:点击manageJenkins进入配置页面:点击插件管理:搜索kubernetes插件:2.检查是否安装成功点击ManagerJenkins进入配置界面,然后点击ConfigureSystem:在系统配置里面可以找到Cloud配置项,则表示插件安装成功:注意:我这里......