python中SocketServer是什么?

python中SocketServer是什么?
python中SocketServer是什么?

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

1、概念

模块 SocketServer是标准库提供的服务器框架的基石,这个框架包括 BaseHTTPServer、SimpleHTTPServer、CGIHTTPServer、SimpleXMLRPCServer 和 DocXMLRPCServer 等服务器,它们在基本的服务器的基础上添加了各种功能。

2、分类

SocketServer 包含4个基本的服务器:TCPServer(支持 TCP 套接字流)、UDPServer(支持 UDP 数据报套接字)以及更难懂的 UnixStreamServer 和 UnixDatagramServer。后面 3 个可能不会用到。

3、使用方法

1)使用模块 SocketServer 编写服务器时,大部分的代码都位于请求处理器中。每当服务器收到客户端的连接请求时,都将实例化一个请求处理程序,并对其调用各种处理方法来处理请求。具体调用哪些方法取决于使用的服务器类和请求处理程序类;

2)从请求处理类派生出子类,从而让服务器调用一组自定义的处理方法。基本请求处理程序类 BaseRequestHandler 将所有操作都放在一个方法中——服务器调用方法 handle。这个方法可通过属性 self.request 来访问客户端套接字。

3)处理的是流(使用 TCPServer 时很可能如此),可使用 StreamRequestHandler 类,它包含另外两个属性:self.rfile(用于读取)和 self.wfile(用于写入)。你可使用这两个类似于文件的对象来与客户端通信。

在网络通信中,我们有接触到Socket的方法,在它的基础上还有一种更为高级的使用,一般用在服务器的开发中,它就是SocketServer。对于一些比较复杂的程序,我们一般会选择这种框架进行处理,这样能减少很多开发的时间。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注