意见箱
恒创运营部门将仔细参阅您的意见和建议,必要时将通过预留邮箱与您保持联络。感谢您的支持!
意见/建议
提交建议
配置详情
本产品仅限新用户首购专享!每人限购1台,续费5折
当前配置
数据中心: {{ getconfigInfoArea(productDetailInfo) }}
套餐规格: 2 核 2 G
带宽:
系统盘 {{ validateMySplit(ProductVM.getProductappointInfoBykey(productDetailInfo,'云系统盘'),'|',1) }} 性能型
IP 数 1 个
可选配置
操作系统:
VPC:
安全组:
购买时长:
1 月
我已阅读并同意《恒创科技服务协议》
购买前请阅读协议并勾选同意

python如何做长连接

来源:互联网 编辑:云晓生
2024-04-07 16:31:12

在Python中,可以使用socket库来实现长连接,以下是一个简单的示例:

1、导入所需的库:

import socket
import threading

2、定义一个处理客户端请求的函数:


python如何做长连接

def handle_client(client_socket):
    request = client_socket.recv(1024)
    print(f"接收到的数据: {request.decode('utf8')}")
    client_socket.send("数据已收到".encode('utf8'))
    client_socket.close()

3、创建一个服务器套接字,并绑定到指定的IP地址和端口:

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('0.0.0.0', 9999))
server.listen(5)
print("服务器正在监听端口9999...")

4、使用一个无限循环来接受客户端连接,并为每个连接创建一个新的线程来处理:

while True:
    client, addr = server.accept()
    print(f"接受到来自{addr}的连接")
    client_handler = threading.Thread(target=handle_client, args=(client,))
    client_handler.start()

将以上代码片段组合在一起,完整的服务器代码如下:

import socket
import threading
def handle_client(client_socket):
    request = client_socket.recv(1024)
    print(f"接收到的数据: {request.decode('utf8')}")
    client_socket.send("数据已收到".encode('utf8'))
    client_socket.close()
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(('0.0.0.0', 9999))
server.listen(5)
print("服务器正在监听端口9999...")
while True:
    client, addr = server.accept()
    print(f"接受到来自{addr}的连接")
    client_handler = threading.Thread(target=handle_client, args=(client,))
    client_handler.start()

运行此代码后,服务器将在端口9999上监听连接,当客户端连接到服务器时,服务器将接收客户端发送的数据,并向客户端发送确认消息,这个过程将持续进行,直到服务器关闭或客户端断开连接。

本网站发布或转载的文章均来自网络,其原创性以及文中表达的观点和判断不代表本网站。
上一篇: python如何设置时间 下一篇: python 如何多行注释