AsyncHttpSupport并发发送请求
public class AsyncHttpSupportTest {
@InjectMocks
private AsyncHttpSupport asyncHttpSupport;
@Mock
private HttpSupport support;
public static void main(String[] args) throws InterruptedException {
AsyncHttpSupport asyncHttpSupport = new AsyncHttpSupport();
asyncHttpSupport.addDefaultHttpHeader("Cache-Control", "no-Cache");
asyncHttpSupport.addDefaultHttpHeader("X-Service-Chain", "prj00804");
asyncHttpSupport.addDefaultHttpHeader("Content-Type", "application/json");
String test = "{\"bizContent\":\"{\\\"kdtId\\\":\\\"30338372\\\",\\\"mchId\\\":\\\"30338372\\\"}\",\"method\":\"test2\",\"service\":\"XXX.pay.test\",\"partnerId\": \"820000000003\", \"sign\":\"38F7FBBA82AA6424A69F810E95059FC5\", \"version\": \"1.0.3\"}";
String url = "http://10.9.169.40:7001/gw";
String queryBankCardList = "{\"bizContent\":\"{}\",\"method\":\"bankinfo\",\"service\":\"XXX.pay.merchant.withdraw\",\"partnerId\": \"820000000003\", \"sign\":\"38F7FBBA82AA6424A69F810E95059FC5\", \"version\": \"1.0.0\"}";
AtomicInteger reject = new AtomicInteger(0);
AtomicInteger counter = new AtomicInteger(0);
Thread[] pools = new Thread[Runtime.getRuntime().availableProcessors()];
for (int i = 0; i < Runtime.getRuntime().availableProcessors(); i++) {
new Thread(() -> {
try {
for (int j = 0; j < 100; j++) {
counter.incrementAndGet();
Future<HttpResponse> res = asyncHttpSupport.post(url,j % 2 == 0 ? test : queryBankCardList);
HttpResponse httpResponse = res.get();
if (EntityUtils.toString(httpResponse.getEntity()).contains("\"code\":50002")) {
reject.incrementAndGet();
}
}
} catch (Exception e) {
}
}
).start();
}
TimeUnit.SECONDS.sleep(50);
System.out.println(reject.get());
System.out.println(counter.get());
}
最新文章
- ECharts(Enterprise Charts 商业产品图表库)初识
- java 中获取2个时间段中所包含的周数(股票的周数->;从周六到周五)
- Cannot attach the file as database &#39;membership&#39;.
- 关于cocoa框架,你所要知道的一切(苹果官方文档,cocoa框架核心竞争力,必须收藏!)
- BZOJ 1025 [SCOI2009]游戏
- Impala与Hive的比較
- A canvas fillText and strokeText example
- 设计模式(四)原型模式Prototype(创建型)
- MIP技术进展月报第2期: 数据绑定,异步脚本加速
- XFire+Spring构建Web Service经验总结
- SQL随记(一)
- HTML(八)HTML meta标签&;base标签
- mysql性能监控软件pmm
- 接口测试工具-poster
- jQuery-3.事件篇---键盘事件
- Java中的 内部类(吐血总结)
- The Minimum Cycle Mean in a Digraph 《有向图中的最小平均权值回路》 Karp
- P2152 [SDOI2009]SuperGCD 未完成
- lvm入门
- 使用ecstore-sdk开发包制作易开店和启明星模板
热门文章
- Codechef CHSIGN Change the Signs(May Challenge 2018) 动态规划
- 在cron运行hive时,无法打出mapreduce日志
- 04. Pandas 3| 数值计算与统计、合并连接去重分组透视表文件读取
- 008 RestFul API 拦截器
- 058 kafka与log4j集成
- linux 更新yum源 改成阿里云源
- webpack的总结
- 00-JAVA语法基础--课后作业
- 6486: An Ordinary Game(规律)
- java中path和CLASSPATH的配置和意义解析