python中SocketServer是什么?
python中SocketServer是什么?
本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。
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。对于一些比较复杂的程序,我们一般会选择这种框架进行处理,这样能减少很多开发的时间。
以上就是python中SocketServer的基本介绍,相信大家对于这种高难度的服务器框架学习起来比较困难,不过我们可以就一些基础知识点进行了解。更多Python学习教程请关注IT培训机构:千锋教育。

相关推荐HOT
更多>>
Python常用切片操作
以列表:a=[0,1,2,3,4,5,6,7,8,9]为说明对象1.取偶数位置>>>b=a[::2][0,2,4,6,8]2.取奇数位置>>>b=a[1::2][1,3,5,7,9]3.拷贝整个对象>...详情>>
2023-11-07 21:50:59
Python和PHP的区别
从开发的角度来看,PHP是面向WEB的语言。PHP应用程序更像是一组单独的脚本,甚至只是一个单独入口。而Python是多用途语言,也可以用于WEB开发,...详情>>
2023-11-07 21:16:11
Python与Node.JS
在进行新项目时选择正确的编程语言可能是程序员经常做出的比较艰巨的决定之一。这个挑战背后的原因是,每个新项目都会遇到一个独特的问题,并且...详情>>
2023-11-07 19:44:41
Python字典之通过序列生成字典
我们将下面的python序列转换为dict类型。lst=[('a',1),('b',2),('c',3)]普通的写法:fork,vinlst:dic[k...详情>>
2023-11-07 19:33:19