jmeter并发测试

复制代码
数据库连接池配置应增大:
datasource:
  dynamic:
    #设置默认的数据源或数据源组,默认值为master
    primary: law
    druid:
      initialSize: 20
      minIdle: 20
      maxActive: 3000
      maxWait: 60000
      queryTimeout: 60000
      timeBetweenEvictionRunsMillis: 60000
      minEvictableIdleTimeMillis: 20000
      validationQuery: SELECT 'x'
      testWhileIdle: true
      testOnBorrow: true
      testOnReturn: true
      poolPreparedStatements: true
      maxPoolPreparedStatementPerConnectionSize: 20

mysql数据库配置:

max_connections=1000

max_user_connections=500

net_read_timeout = 2000

jmeter配置:

1、添加线程组

2、线程组下添加http请求

3、线程组下添加http信息头管理器

4、线程组下添加查看结果树

5、线程组下添加汇总报告

nginx配置

user www www;

worker_processes auto;

error_log logs/error.log notice;

pid logs/nginx.pid;

worker_rlimit_nofile 20480;

events {

use epoll;

worker_connections 20480;

}

http {

include mime.types;

default_type application/octet-stream;

resolver 114.114.114.114;

server_names_hash_bucket_size 128;

client_header_buffer_size 64k;

large_client_header_buffers 8 128k;

client_max_body_size 100m;

client_body_buffer_size 30M;

limit_conn_zone $binary_remote_addr zone=one:32k;

sendfile on;

tcp_nopush on;

proxy_read_timeout 240s;

keepalive_timeout 600;

tcp_nodelay on;

gzip on;

gzip_min_length 1k;

gzip_buffers 4 16k;

gzip_http_version 1.0;

gzip_comp_level 2;

gzip_types text/plain application/x-javascript text/css application/xml;

gzip_vary on;

log_format wwwlogs 'remote_addr - remote_user [time_local\] request status body_bytes_sent http_referer http_user_agent $http_x_forwarded_for';

#access_log logs/access.log;

#log_format access-upstream 'time_iso8601\|request|remote_addr\|upstream_response_time|http_user_agent\|http_x_forwarded_for';

map time_iso8601 logdate {

'~^(?<ymd>\d{4}-\d{2}-\d{2})' $ymd;

default 'date-not-found';

}

access_log logs/access-$logdate.log ;

#include default.conf;

include vhost/*.conf;

#upstream配置

upstream springboot{

server 192.168.1.xx:端口;

server 192.168.1.xx:端口;

}

}

代理的location下配置反向代理

location /boot/ {

proxy_pass http://springboot;(upstream的命名的名称)

proxy_set_header Host host:server_port;

proxy_set_header X-Real-IP host:remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection "upgrade";

}

jmeter可能出现的报错或异常

1、java.net.socketException:socket closed(强制停止线程,连接中断产生的错误,正常压测我们等测试结束就好,不用强制停止。)

2、java.net.SocketTimeoutExpetion:Read timed out(这个错误的导致是由于请求接口 设置的请求超时与请求响应超时设置过小所致。)

3、jmeter压测报java.net.SocketException:Connection reset: windows电脑需配置注册表

MaxUserPort:最大动态端口数(Default = 5000, Max = 65534)

TcpTimedWaitDelay:TCP等待延迟时间(30)

TcpNumConnections:TCP最大连接数(Default = 16,777,214)

MaxFreeTcbs:最大TCP控制块(1000-2000)

MaxHashTableSize:最大TCB Hash table数量(64-65536)

解析中值为10进制,下方脚本已全转换为16进制

实际在注册表新增:

HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters\] 新建: "MaxUserPort"=dword:fffe "TcpTimedWaitDelay"=dword:1e "TcpNumConnections"=dword:fffffe "MaxFreeTcbs"=dword:7D0 "MaxHashTableSize"=dword:10000

相关推荐
我爱挣钱我也要早睡!4 分钟前
Java 复习笔记
java·开发语言·笔记
AD钙奶-lalala2 小时前
Mac OS上搭建 http server
java
皮皮林5516 小时前
SpringBoot 全局/局部双模式 Gzip 压缩实战:14MB GeoJSON 秒变 3MB
java·spring boot
weixin_456904276 小时前
Spring Boot 用户管理系统
java·spring boot·后端
趁你还年轻_6 小时前
异步编程CompletionService
java
DKPT6 小时前
Java内存区域与内存溢出
java·开发语言·jvm·笔记·学习
sibylyue6 小时前
Guava中常用的工具类
java·guava
奔跑吧邓邓子6 小时前
【Java实战㉞】从0到1:Spring Boot Web开发与接口设计实战
java·spring boot·实战·web开发·接口设计
专注API从业者6 小时前
Python/Java 代码示例:手把手教程调用 1688 API 获取商品详情实时数据
java·linux·数据库·python
奔跑吧邓邓子7 小时前
【Java实战㉝】Spring Boot实战:从入门到自动配置的进阶之路
java·spring boot·实战·自动配置