Java代码
- Action()
- {
- //思考时间
- //lr_think_time (5);
- //集合点设置
- lr_rendezvous("集合");
- //事务
- lr_start_transaction("trans");
- web_add_cookie("cart=6593,12,12|6965,8,8|7989,9,9|4038,5,5; DOMAIN=192.168.3.32");
- web_add_cookie("deleteCartProducts=; DOMAIN=192.168.3.32");
- // web_add_cookie("promotionRuleList=142,2774,2,-1|142,6593,1,-2|142,6965,1,-2|142,7989,0,-2|142,4038,0,-2|142,-1,1,1|145,2774,1,-1|145,6593,1,-2|145,6965,0,-2|145,7989,0,-2|145,4038,0,-2|145,-1,1,1|148,7989,2,-1|148,6593,1,-2|148,6965,0,-2|148,7989,0,-2|148,-1,1,1; DOMAIN=192.168.3.32");
- //Ajax
- web_add_auto_header("x-requested-with",
- "XMLHttpRequest");
- //文本检查点
- // web_reg_find("Fail=NotFound",
- // "Search=Body",
- // "Text=86.40",
- // LAST);
- // 通过返回“86.40”检查成功
- web_reg_find("Text=86.40",
- "SaveCount=Hello",
- "Search=Body",
- LAST);
- /*
- * 请求前
- */
- web_custom_request("AllGroupSKC",
- "URL=http://192.168.3.32:13245/Shopping/AllGroupSKC?_=1377684914235",
- "Method=POST",
- "Resource=0",
- "RecContentType=text/html",
- "Referer=",
- "Snapshot=t2.inf",
- "Mode=HTML",
- "EncType=",
- LAST);
- /*
- * 请求后
- */
- // 检查结果
- if (atoi(lr_eval_string("{Hello}")) > 0){ //判断如果Welcome字符串出现次数大于0
- //判断如果Welcome字符串出现次数大于0
- lr_output_message("Log on successful.");
- }else{ //如果出现次数小于等于
- //如果出现次数小于等于
- lr_error_message("Log on failed");
- }
- //在日志中输出Log on failed
- //移除头信息
- web_revert_auto_header("x-requested-with");
- //web_remove_cookie("promotionRuleList");
- lr_end_transaction("trans", LR_AUTO);
- return 0;
- }
1、增加压力机-->server单机的场景,或者在服务器上安装linux版本的,直接抛开网络状况,来压。
2、web_cleanup_cookies() 清除cookies
web_remove_cookie()
//web_cache_cleanup();//清空缓存
访问首页,应该以带缓存的方式压测
访问单个商品页面,应该以清空缓存的方式压
压测空白页面
清除缓存:静态数据一直会获取,占用带宽==== vs 带缓存:静态数据一次性获取,而动态数据会一直获取
加集合点-总体tps会低 ==== vs 不加集合点 tps会高
加thinktime ==== vs 不加thinktime :不计算在tps之内的
加事务 ==== vs 不加事务,多流程的 要加多个事务
如果压页面过慢,逐步去掉资源压测,针对单个资源压测,
每个涉及到的环节都要考虑,机器节点、网络节点、访问策略,F5分发策略;
千兆带宽就只能支撑每秒120M的流量
----------------------------------
STring, stringbuffer不会动态分配内存,stringbuilder:才会动态使用内存
--------------------------------
日志要分开打印,要不然维护查问题不好查,会有log被多个节点冲散的情况
而且多个节点公用一个log文件,log4j会锁死,不能更新,新日期的log文件会生成不了
不用system.out
上线后,只输出关键日志,减少日志量
===================
家用2M的带宽,实际下载速度是170k bps
升级500倍后,下载是170*500=85M bps
假如页面是130k,当有2000的并发用户进来后,2000*130k=260M的数据量
260M/85M bps =3s,至少要用3秒时间来处理完