线程在客户端 - 服务器套接字程序 - 代理服务器

时间:2012-10-28 04:35:00

标签: java http sockets client-server

我正在尝试编写一个充当代理服务器的程序。 代理服务器基本上侦听给定端口(7575)并将请求发送到服务器。 截至目前,我没有实现缓存响应。

代码看起来像

ServerSocket socket = new ServerSocket(7575);   
Socket clientSocket = socket.accept(); 
clientRequestHandler(clientSocket);

我更改了上面的代码如下://从另一个方法中调用相同的clientRequestHandler方法。

Socket clientSocket = socket.accept();
Thread serverThread = new Thread(new ConnectionHandler(client));
serverThread.start();

class ConnectionHandler implements Runnable {
    Socket clientSocket = null;
    ConnectionHandler(Socket client){
        this.clientSocket = client;
    }
    @Override
    public void run () {
        try {
            PrxyServer.clientRequestHandler(clientSocket);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

}

使用该代码,我可以打开像谷歌这样的网页。但是,如果我打开另一个网页,即使我完全收到第一个响应,我也会通过同行期间重置连接。

1。我该如何处理这个问题 我可以使用线程来处理不同的请求。有人可以在我查找实现线程的示例代码时提供参考。

0 个答案:

没有答案