nine day--网络编程socketserver

复习:
server端一般先写接收数据
65535 2**16
5层对应的顺序和协议-记住
tcp协议特点:可靠的、面向连接的、流传输、消息无边界
    三次握手:
    四次挥手:分别确认断开,两次不可以合并
    粘包现象:在发送数据的时候先发送数据的长度,在接收端先接收数据的长度,再根据长度接收数据
一个server端同一时刻只能与一个client端连接
socketserver同时对多个client提供服务

 1 #同时对多个client提供服务;;;把原来写的server里的代码写到handle里即可,不用bind、listen、accept
 2 # socketserver所启动的服务端是不能有input操作的
 3 # server端一般都是根据client端的要求去执行固定的代码
 4 import socketserver
 5 import time
 6 class Myserver(socketserver.BaseRequestHandler):
 7     def handle(self): #必须叫handle
 8         conn=self.request
 9         print(conn)
10         time.sleep(3)
11         conn.send(b'hello')
12         time.sleep(6)
13         conn.send(b'hello2')
14         # ret = conn.recv(1024).decode('utf-8')  #可以收到一次
15         # print(ret)
16 
17 
18 
19 my_server=socketserver.ThreadingTCPServer(('127.0.0.1',9001),Myserver) #传递类名
20 my_server.serve_forever() #启动了整个socket_server端
socketserver-s
1 import socket
2 sk = socket.socket()
3 sk.connect(('127.0.0.1',9001))
4 print(sk.recv(1024))
5 print(sk.recv(1024))
6 sk.close()
socketserver-c

转载于:https://www.cnblogs.com/lijie123/p/9175089.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值