Python Network Programming(8)---SocketServer模块
来源:互联网 发布:韩国历史教材 知乎 编辑:程序博客网 时间:2024/06/12 01:08
Note:python3中SocketServer模块名字变为socketserver
SocketServer 模块的官方文档:https://docs.python.org/2/library/socketserver.html
总共有4个基本的服务器类: TCPServer
,UDPServer
,UnixStreamServer
与UnixDatagramServer
.
这4个类中封装了socket
模块中一些方法,可以实现用socket
模块手动完成的所有服务器操作,例如创建套接字、绑定地址和监听进入的连接。
但是这四个类都是同步通信,每一个来自客户的请求,都需要完成后,下一个请求才会开始。在SocketServer
模块中,可以使用mix-in类型的类ForkingMixIn
与ThreadingMixIn
来创建单独的进程或者线程实现异步通信。
Creating a Server
- First,创建一个请求处理程序,说明如何处理客户端请求。这个请求处理类需要继承自
BaseRequestHandler
类。请求处理类中,必须重写handle()
方法,这个方法将说明如何处理客户的请求。 - Second,需要实例化(先创建一个新的类,继承自thread或者forking和服务器类中的一个)4个基本服务器类中的其中一个,向其中传入服务器地址参数与请求处理类参数。
- Then,然后调用服务器对象的
handle_request()
或者serve_forever()
方法来处理一个或者多个请求。 - Finally,调用
server_close()
方法来关闭套接字。
KEY POINT:Forking and threading versions of each type of server can be created using the ForkingMixIn
and ThreadingMixIn
mix-in classes. For instance, a threading UDP server class is created as follows: class ThreadingUDPServer(ThreadingMixIn, UDPServer): pass
首先要继承的是mix-in类,因为ThreadingMixIn
重写了一个UDPServer里面的方法。
0 0
- Python Network Programming(8)---SocketServer模块
- Python SocketServer模块
- [Python]SocketServer模块
- python socket编程(二)--SocketServer模块
- python的Socketserver模块使用,异常处理
- Python socket模块编程 SocketServer框架
- python socket编程(2)-SocketServer 模块
- python模块介绍- SocketServer 网络服务框架
- python模块介绍- SocketServer 网络服务框架
- python模块介绍- SocketServer 网络服务框架
- python 网络编程之socketserver模块
- python network programming tutorial
- python network programming tutorial
- socketserver模块
- python socketserver
- Python SocketServer
- Python::SocketServer
- Python--SocketServer
- 第十二周 计算图G中出度为0的顶点数
- knockoutjs二 observableArray的使用
- JAVA7环境下Spring容器对locale对象反序列的bug
- ToolKit的配置
- Listener 监听器
- Python Network Programming(8)---SocketServer模块
- 关于今天笔记本电脑突然CPU占用比突然飙到90%以上的问题
- 大屏幕自适应
- iOS的WebView自适应内容高度
- 如何建一个自己的小站
- glib g_main_loop理解
- 边界模块-system generator
- 字符串String MD5计算小工具 C#篇
- Launcher和LauncherModel之间的数据交互