• 在pods中添加有关httpclient的 压力测试 & 监控


    PS D:****.WebSite> docker exec -ti d630dc731617 /bin/bash
    root@d630dc731617:/app# apt-get install net-tools
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following NEW packages will be installed:
      net-tools
    0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
    Need to get 248 kB of archives.
    After this operation, 963 kB of additional disk space will be used.
    Get:1 http://mirrors.163.com/debian stretch/main amd64 net-tools amd64 1.60+git20161116.90da8a0-1 [248 kB]
    Fetched 248 kB in 6s (35.8 kB/s)
    debconf: delaying package configuration, since apt-utils is not installed
    Selecting previously unselected package net-tools.
    (Reading database ... 21948 files and directories currently installed.)
    Preparing to unpack .../net-tools_1.60+git20161116.90da8a0-1_amd64.deb ...
    Unpacking net-tools (1.60+git20161116.90da8a0-1) ...
    Setting up net-tools (1.60+git20161116.90da8a0-1) ...
    
    root@d630dc731617:/app# ss -o state ESTABLISHED|wc -l #替代netstat -ant |grep 172.16.32.80:8080|grep -i "ESTABLISHED"|wc -l
    0
    root@d630dc731617:/app# ss -o state  close-wait|wc -l #替代netstat -ant |grep 172.16.32.80:8080|grep -i "CLOSE_WAIT"|wc -l 0 
    root@d630dc731617:/app# apt-get install apache2-utils 
    Reading package lists... 
    Done Building dependency tree Reading state information... 
    Done The following additional packages will be installed: 
    libapr1 libaprutil1 The following NEW packages will be installed: 
    apache2-utils libapr1 libaprutil1 0 upgraded, 3 newly installed, 0 to remove and 4 not upgraded. Need to get 400 kB of archives. 
    After this operation, 905 kB of additional disk space will be used. 
    Do you want to continue? [Y/n] y 
    Get:1 http://mirrors.163.com/debian stretch/main amd64 libapr1 amd64 1.5.2-5 [96.6 kB] 
    Get:2 http://mirrors.163.com/debian stretch/main amd64 libaprutil1 amd64 1.5.4-3 [85.8 kB] 
    Get:3 http://mirrors.163.com/debian stretch/main amd64 apache2-utils amd64 2.4.25-3+deb9u8 [218 kB] Fetched 400 kB in 0s (1,369 kB/s) 
    debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libapr1:amd64. 
    (Reading database ... 22004 files and directories currently installed.) 
    Preparing to unpack ...
    /libapr1_1.5.2-5_amd64.deb ... 
    Unpacking libapr1:amd64 (1.5.2-5) ... 
    Selecting previously unselected package libaprutil1:amd64. 
    Preparing to unpack 
    .../libaprutil1_1.5.4-3_amd64.deb 
    ... Unpacking libaprutil1:amd64 (1.5.4-3) ... Selecting previously unselected package apache2-utils. Preparing to unpack .../apache2-utils_2.4.25-3+deb9u8_amd64.deb ... Unpacking apache2-utils (2.4.25-3+deb9u8) ... Setting up libapr1:amd64 (1.5.2-5) ... Processing triggers for libc-bin (2.24-11+deb9u4) ... Setting up libaprutil1:amd64 (1.5.4-3) ... Setting up apache2-utils (2.4.25-3+deb9u8) ... Processing triggers for libc-bin (2.24-11+deb9u4) ... 
    root@d630dc731617:/app# env
    root@d630dc731617:/app# curl -X GET "http://localhost:5001/api/Ops/TestProxy" -H "accept: text/plain"
    curl: (7) Failed to connect to localhost port 5001: Connection refused
    root@d630dc731617:/app# curl -X GET "http://localhost/api/Ops/TestProxy" -H "accept: text/plain"
    {"opSucess":true,"result":3020000,"resultContent":true,"type":"System.Boolean","isArray":false}root@d630dc731617:/app#
    root@d630dc731617:/app# ab -n 1 -c 1 http://localhost/api/Ops/TestProxy
    This is ApacheBench, Version 2.3 <$Revision: 1757674 $>
    Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
    Licensed to The Apache Software Foundation, http://www.apache.org/
    
    Benchmarking localhost (be patient).....done
    
    
    Server Software:        Kestrel
    Server Hostname:        localhost
    Server Port:            80
    
    Document Path:          /api/Ops/TestProxy
    Document Length:        95 bytes
    
    Concurrency Level:      1
    Time taken for tests:   1.603 seconds
    Complete requests:      1
    Failed requests:        0
    Total transferred:      279 bytes
    HTML transferred:       95 bytes
    Requests per second:    0.62 [#/sec] (mean)
    Time per request:       1602.877 [ms] (mean)
    Time per request:       1602.877 [ms] (mean, across all concurrent requests)
    Transfer rate:          0.17 [Kbytes/sec] received
    
    Connection Times (ms)
                  min  mean[+/-sd] median   max
    Connect:        0    0   0.0      0       0
    Processing:  1603 1603   0.0   1603    1603
    Waiting:     1603 1603   0.0   1603    1603
    Total:       1603 1603   0.0   1603    1603
    
    root@d630dc731617:/app# ss -o state  close-wait|wc -l #替代 netstat -ant |grep 172.16.32.80:8080|grep -i "CLOSE_WAIT"|wc -l 
    0 
    root@d630dc731617:/app# ss -o state ESTABLISHED|wc -l #替代netstat -ant |grep 172.16.32.80:8080|grep -i "ESTABLISHED"|wc -l 
    3 
    root@d630dc731617:/app#
    

       

    监控脚本内容::监控端点正常与异常情况

    #!/bin/bash
    
    n=100
    while [ $n -gt 0 ];
    do
            sleep 10s
            n=$((n-1))
            msg=$(netstat -ant |grep -i "CLOSE_WAIT"|wc -l)
            msg2=$(netstat -ant |grep -i "ESTABLISHED"|wc -l)
            echo "----"
            echo "established:$msg2"
            echo "CLOSE_WAIT:$msg"
    
    done

    netstat命令过时,更新如下:

    #!/bin/bash
    
    n=100
    while [ $n -gt 0 ];
    do
            sleep 10s
            n=$((n-1))
            msg=$(ss -o state ESTABLISHED|wc -l)
            msg2=$(ss -o state  close-wait|wc -l)
            msg4=$(ss -o state  closing|wc -l)
            msg5=$(ss -o state  closed|wc -l)
            msg3=$(ss -o state time-wait|wc -l)
            echo "----"
            echo "ESTABLISHED:$msg2"
            echo "close-wait:$msg"
            echo "closing:$msg4"
            echo "closed:$msg5"
            echo "time-wait:$msg3"
    
    done
    

     

    1.copy本地文件进入pods:执行压力测试下断点的监控

    2.执行压力测试

    PS C:Userspanxi> docker ps   #查找container
    PS C:Userspanxi> docker inspect -f '{{.ID}}' 27d239cf4df9  #根据container的short id获取full id
    PS D:> docker cp .TestTCP.sh 27d239cf4df920851af22e531915a735b01f803dc57759634c9328dda81e0084:/app/a.sh  #copy本地文件TestTCP.sh进入pods
    PS D:> docker exec -ti 27d239cf4df9  /bin/bash  #进入pods
    root@27d239cf4df9:/app# vi a.sh #确认文件内容
    root@27d239cf4df9:/app# chmod -R u+rwx ./a.sh  #设置文件权限
    root@27d239cf4df9:/app# ./a.sh #执行脚本文件
    
    root@27d239cf4df9:/app# ab -n 10000 -c 20 http://localhost/api/Ops/TestProxy3  #运行压力测试
    

      

  • 相关阅读:
    OOM when allocating tensor of shape [] and type float [[node conv2d_224/kernel/Initializer/random_uniform/min (defined at ./intances/utils.py:19) ]]
    前端H5,点击选择图片控件,图片直接在页面上展示~
    (五)共用体
    (四)结构体
    (三)指针和数组
    (二)内存分配
    (一)指针就是地址
    MinGW
    设计模式总结
    Java关于md5+salt盐加密验证
  • 原文地址:https://www.cnblogs.com/panpanwelcome/p/12145260.html
Copyright © 2020-2023  润新知