Python (HTTP多进程服务器)

import socket
import multiprocessing
import re


class Server(object):
    def __init__(self, port):
        """ 在初始化中做好tcp连接的准备工作 """
        # 1创建一个tcp套接字
        self.tcp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        # 端口重复使用
        self.tcp_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        # 2.绑定本地端口
        self.tcp_socket.bind(("", port))
        # 3.设置监听
        self.tcp_socket.listen(128)

    def run_server(self):
            """ 循环运行服务器 """
            while True:
                # 1.等待用户接入
                new_socket, addr = self.tcp_socket.accept()
                # 2.为用户提供服务,创建多线程
                p = multiprocessing.Process(target=self.content, args=(new_socket,))
                p.start()
                # 因为进程会复制一份再去运行,所以在这里要关掉主进程的客户链接
                new_socket.close()
                # 3.关闭套接字
            self.tcp_socket.close()

    def

你可能感兴趣的:(HTTP多进程服务器)