我按照我在网上找到的教程,使用 Sun 的轻量级 HttpServer 构建了一个简单的 HttpServer。
基本上主函数如下所示:
public static void main(String[] args) throws Exception {
HttpServer server = HttpServer.create(new InetSocketAddress(8000), 0);
//Create the context for the server.
server.createContext("/", new BaseHandler());
server.setExecutor(null); // creates a default executor
server.start();
}
我已经实现了 BaseHandler 接口的方法来处理 Http 请求并返回响应。
static class BaseHandler implements HttpHandler {
//Handler method
public void handle(HttpExchange t) throws IOException {
//Implementation of http request processing
//Read the request, get the parameters and print them
//in the console, then build a response and send it back.
}
}
我还创建了一个通过线程发送多个请求的客户端。每个线程向服务器发送以下请求:
http://localhost:8000/[context]?int="+threadID
在每个客户端运行时,请求似乎以不同的顺序到达服务器,但它们是以串行方式提供的。
如果可能的话,我希望以并行方式处理请求。
例如,是否有可能在单独的线程中运行每个处理程序,如果可以,这是一件好事吗?
还是我应该完全放弃使用 Sun 的轻量级服务器并专注于从头开始构建一些东西?
谢谢你的帮助。