JAVA并发编程的一些整理
2016-07-08 21:00
309 查看
需求
有个统计请求的小程序,需要发送20W个API请求分析
请求量比较大,如果使用单线程的话只能10小时出结果,这太慢对调试极其不方便。平均每条的API请求响应是100MS,考虑使用50个多线程并发网络请求,等待20W个请求都结束后,主线程再进行处理。时间提升20倍优化到了0.5小时,勉强可以满足需求,现在的瓶颈在对方的API。
这里的多线程用到了线程池(JAVA5后可用),主线程等待用到了
Future.get()的阻塞功能,但是不是可以考虑使用线程的同步。
主要参考了:
并发:【Java并发编程】之十九:并发新特性—Executor框架与线程池(含代码)
Future等待JAVA进阶—-主线程等待子线程各种方案比较
相关文章推荐
- 第1章 Java程序设计概述
- 我的JAVA学习之路
- 生产者-消费者模型的Java实现
- java的ArrayList的值
- 利用数组算阶乘
- Spring之Spring AOP
- Spring-4:bean的自动装配及一些问题
- Java 错误:找不到或无法加载主类
- 选择排序与插入排序--java
- leetcode:Minimum Window Substring题解(Java)
- Java核心技术-读书笔记 概览
- Eclipse配置Hadoop环境并运行WordCount样例
- 如何装饰Eclipse
- java基础教程10:事件处理机制
- Java实现文件远程上传和下载
- Java基础之多线程断点下载
- Java反射学习一
- Java反射学习二
- Java反射学习三
- Java反射学习四