Java 源码:测算服务器响应速度 java 程序
1
. 任务描述
需要做一个程序,对某一服务器运行的 web server 进行测算,看对提出的 request 做出相
应的时间,并且在多个 request 同时提出时的响应时间。
2
. 计划
因为 java sdk 中包含有比较全面的
class
能够对 http 等多种协议的处理方法进行了封装,
用起来比较方便,能够在比较短的时间内快速开发出这一测算工具。
需要
2
个功能:
a. 因为不是仅仅对一个 web server 或者一个 form 进行测算,所以需要程序能够灵活处理,
完成各种工作。我采用了配置文件的形式,让程序从配置文件中读取数据,并作相应动作。
b.需要采用多线程方式,对同一个 web server 提交多次 request.
3
.开发过程
(读者可以跟随这一过程,自己动手写代码,到全文结束,就能有一个完整可用的程序
了)
主要的工作都有 TestThread 来完成。代码如下:
class
TestThread
implements
Runnable {
Parameter param;
TestThread(Parameter par) {
param = par;
}
public
void
run() {
long
time1 =
new
Date().getTime();
try
{
URL target = param.url;
HttpURLConnection conn = (HttpURLConnection) target.openConnection();
conn.setRequestMethod(param.method);
int
i;
for
( i =
0
; i < param.length; i++ ) {
conn.setRequestProperty(param.key[i], param.value[i]);
}
conn.connect();
BufferedReader in =
new
BufferedReader(
new
InputStreamReader(conn.getInputStream()));
String inputLine;
while
( (inputLine = in.readLine()) !=
null
);
}
catch
(Exception e) {
}