如何在Java中实现多线程Web服务器

时间:2011-11-26 11:48:09

标签: java multithreading networking network-programming

我的任务是用Java实现多线程Web服务器,但我不知道从哪里开始。 我们在讲座中看到的只是tcp如何工作,层等等。但我不知道如何实现Web服务器。

你能给我一个起点吗?

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:0)

首先,您必须选择要使用的编程语言。几种语言特别有用,更适合网络编程。我以Erlang为例。

答案 2 :(得分:0)

你没有提到你应该使用哪种语言。我假设是C / C ++。

首先,您可以查看Boost.Asio库,它是examples。有两个HTTP服务器示例。

其次,如果你需要一个关于这里做什么的粗略计划,那就是:

  1. 在所需地址(例如0.0.0.0)上创建套接字,bind(), 在它上面运行listen()并准备接受()连接。
  2. 接受新连接后,您可以从中恢复()数据 是一个符合HTTP协议的纯文本。
  3. 在确定客户想要什么后,你应该补充缓冲区并发送()回来。
  4. 确切的函数名称和总体细节取决于您的编程语言。