Spring Boot: 接口压测及简要优化策略

本文介绍了如何使用jmeter对接口进行压力测试,包括数据准备、接口改造和测试步骤。通过设置线程池模拟多用户访问,观察系统性能。在测试中,发现未对user_name字段设置索引,提出优化策略:添加索引、使用Redis缓存、布隆过滤器和限流措施。并分享了一个Spring Boot示例工程。
摘要由CSDN通过智能技术生成

工程做好之后,需要对接口进行压力测试。可以自己编写线程池模拟多用户访问测试,也可以使用jmeter进行压测。jmeter的好处是测试方便,并且有完善的结果分析功能。本次采用jmeter进行压力测试。
1.准备数据,为了测试准备200w条以上的数据。一个简单的方法是使用下面的sql快速创建。

INSERT INTO table (user_name,address)
SELECT user_name, address FROM table;

但这样创建的数据不同记录的重复部分太多,和实际业务不太相符。一般业务上,除了主键之外还会有某一个字段是唯一,比如手机号,用户名等。本次将user_name设置为唯一,简单采用UUID的方式生成。

    @RequestMapping("/create")
    public Integer createData(Integer password) {
   
        if (password != 1024) {
   
            return 0;
        }
        ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(10,
                20, 1, TimeUnit.MINUTES,
                new ArrayBlockingQueue<Runnable>(100000),
                Executors.defaultThreadFactory()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值