使用多线程(也可以使用多进程)来处理并发请求。例如,在Python中,可以使用ThreadingMixIn和BaseHTTPServer来编写具有多线程功能的Web服务器,示例代码如下:
from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
from SocketServer import ThreadingMixIn
import threading
class Handler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type','text/html')
self.end_headers()
message = "Hello, world!"
self.wfile.write(message.encode('utf-8'))
class ThreadedHTTPServer(ThreadingMixIn, HTTPServer):
pass
if __name__ == '__main__':
server = ThreadedHTTPServer(('localhost', 8080), Handler)
print('Starting server, use to stop')
server.serve_forever()
在此示例中,我们将HTTPServer类与ThreadingMixIn类组合起来创建了ThreadedHTTPServer,它可以处理多个并发请求。通过在do_GET方法中添加适当的业务逻辑代码,可以创建自己的Web服务器。