用代码模拟调用接口方式压测现网服务器的服务性能

简介: 用代码模拟调用接口方式压测现网服务器的服务性能

本文为博主原创,转载请注明出处:

  最近为统计现网生产环境的服务处理的性能,需要压测现网服务器,由于现网服务器所处的网络不在同一个局域网内,压测不了,所以想到了使用代码的方式,压测服务器的性能,使用的思路就是将模拟压测的线程数,既但线程持续请求的次数以请求参数的方式传入到指定的controller 中,然后再对应的方法中创建线程池,不断的执行任务,同时每隔指定的时间,通过打印日志的方式,观察服务处理的次数。

  提供示例思路代码如下:

  1.创建线程类,并执行指定的任务

import java.util.concurrent.atomic.AtomicInteger;
public class ThreadEntity implements Runnable{
    public static AtomicInteger count = new AtomicInteger(0);
    // 每个线程执行的任务数
    private int eachThreadTaskCount;
    public ThreadEntity(){}
    public ThreadEntity(int eachThreadTaskCount){
        this.eachThreadTaskCount = eachThreadTaskCount;
    }
    @Override
    public void run() {
        for (int i=0;i<eachThreadTaskCount;i++){
            count.incrementAndGet();
            System.out.println("执行加一" + count.get());
            // do yourself to mock test
        }
    }
}


  2. 模拟批量压测:


import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class MockThreadTest {
    public static void main(String[] args) {
        test(10);
    }
    public static void test(int threadNum) {
        ExecutorService executorService = Executors.newFixedThreadPool(threadNum);
        for (int i = 0; i < threadNum; i++) {
            executorService.execute(new ThreadEntity(100));
        }
        long startTimestamp = System.currentTimeMillis();
        boolean isEnding = true;
        while (isEnding) {
            if (ThreadEntity.count.get() == 1000) {
                isEnding = false;
            }
            // 统计计算的次数和时间
            System.out.println("请求次数为" + ThreadEntity.count.get());
            System.out.println("请求的总时间为" + (System.currentTimeMillis() - startTimestamp));
            try {
                Thread.sleep(50);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
        executorService.shutdown();
    }
}

 

标签: 高并发

相关文章
|
8月前
|
JSON 监控 API
在线网络PING接口检测服务器连通状态免费API教程
接口盒子提供免费PING检测API,可测试域名或IP的连通性与响应速度,支持指定地域节点,适用于服务器运维和网络监控。
1197 0
|
5月前
|
Shell 网络安全 开发工具
服务器已经搭建好的项目如何关联至gitee对应仓库并且将服务器的项目代码推送至gitee-优雅草卓伊凡
服务器已经搭建好的项目如何关联至gitee对应仓库并且将服务器的项目代码推送至gitee-优雅草卓伊凡
356 5
|
9月前
|
缓存 安全 网络协议
如何使用Bluetown Cloud服务器及其CDN服务来掩护VPS的真实IP地址。
最终,通过Bluetown Cloud的CDN服务,你的VPS不仅仅是隐藏在一层又一层的保护之下,同时也因为CDN的全球节点而享受到加速访问的优势,无所不在又不被发现,像是一位能在互联网世界中自由穿梭的幽灵特工。
177 14
|
9月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
471 14
|
9月前
|
Java 测试技术 容器
Jmeter工具使用:HTTP接口性能测试实战
希望这篇文章能够帮助你初步理解如何使用JMeter进行HTTP接口性能测试,有兴趣的话,你可以研究更多关于JMeter的内容。记住,只有理解并掌握了这些工具,你才能充分利用它们发挥其应有的价值。+
1327 23
|
9月前
|
物联网
云服务器搭建rttys服务
RTTYS是一款基于Web的串口调试工具,分为服务端(rttys)和客户端(rtty)。服务端负责连接串口设备并提供接口,客户端通过浏览器访问实现远程串口调试。它具有跨平台、易部署的特点,适用于物联网、嵌入式开发等场景,极大提升调试效率。
|
存储 人工智能 安全
做网站如何选择云服务器?(二)服务篇
在现代互联网时代,云服务器成为企业与个人满足业务需求的首选。选择云服务商时需关注多个方面:稳定性与数据保护(如99.95%高可用性、99.999%数据可靠性)、安全防护体系(DDoS防护、入侵检测等)、弹性扩展功能、技术支持体系(24/7支持)、高性价比与灵活付费模式、快速供应与部署能力、多区域覆盖与线路选择、不限流量与IP更换、垂直场景方案(如游戏云、AI训练)及用户评价与案例分析。特别关注不同行业需求,如初创团队的成本控制、大型企业的合规性审查、金融医疗的安全合规等。综合考虑这些因素,才能确保网站高效运行和持续发展。
287 1
|
机器学习/深度学习 人工智能 开发者
DeepSeek服务器繁忙?拒绝稍后再试!基于阿里云PAI实现0代码一键部署DeepSeek-V3和DeepSeek-R1大模型
阿里云PAI平台支持零代码一键部署DeepSeek-V3和DeepSeek-R1大模型,用户可轻松实现从训练到部署再到推理的全流程。通过PAI Model Gallery,开发者只需简单几步即可完成模型部署,享受高效便捷的AI开发体验。具体步骤包括开通PAI服务、进入控制台选择模型、一键部署并获取调用信息。整个过程无需编写代码,极大简化了模型应用的门槛。
594 7
|
存储 弹性计算 安全
阿里云服务器购买后设置密码、安全组、基础安全服务、挂载云盘等流程简介
对于初次选购阿里云服务器的用户来说,通过阿里云推出的各类活动买到心仪的云服务器仅仅是第一步。为了确保云服务器能够正常运行并承载您的应用,购买之后还需要给云服务器设置远程登录密码、设置安全组规则、设置基础安全、购买并挂载云盘等操作之后,我们才能使用并部署自己的应用到云服务器上。本文将详细介绍在阿里云的活动中购买云服务器后,您必须完成的几个关键步骤,助您快速上手并充分利用云服务器的强大功能。
|
开发者 ice
实时云渲染中的NAT转发服务支持个人电脑秒变云渲染服务器
实时云渲染技术广泛应用于XR领域,助力数千客户完成云端部署。平行云推出的转发服务解决了家庭网络动态IP问题,使个人电脑成为实时云渲染服务器,按实际使用分钟数计费,无用户访问不收费。通过配置LarkXR的代理转发Server和ICE Server,开发者可轻松实现互联网访问内网XR应用,极大提升了开发、测试和演示的便利性。
337 11