rwhn.net
当前位置:首页 >> python soCkEt如何实现一个服务器对多个客户端进行... >>

python soCkEt如何实现一个服务器对多个客户端进行...

使用多线程,下面的代码,简单实现一个多线程的web服务器: #coding=utf-8import socketimport threadingfrom time import sleepdef response(sock, addr): print "收到请求" data = sock.recv(1024) print data sock.send(html) sock.close()ht...

TCP协议是流式传输协议,本来就没有什么次的概念,TCP包是底层实现,上层看到的就是数据流,流的特征就是连续不断。 你要区分每一条消息,可以参考建立在TCP连接之上的HTTP协议是怎么做的。 当然了,最简单的方法还是发送终结符/分段符

服务器端代码 while 1: buf = s.recv(1024) 改成 while 1: buf = conn.recv(1024) 看看能不能接收到信息 -------------- 貌似你的服务端代码 俩个while 1 有点问题

通常做法是。打包数据包。 一般是xml 或json 比较简单通用。大多编程支持的编码库就好。java有json. python估计也有json库。自己搜下。

服务器端代码 while 1: buf = s.recv(1024) 改成 while 1: buf = conn.recv(1024) 看看能不能接收到信息 -------------- 貌似你的服务端代码 俩个while 1 有点问题

socket起源于UNIX,在Unix一切皆文件哲学的思想下,socket是一种"打开—读/写—关闭"模式的实现,服务器和客户端各自维护一个"文件",在建立连接打开后,可以向自己文件写入内容供对方读取或者读取对方内容,通讯结束时关闭文件。 socket的英文原...

通常做法是。打包数据包。 一般是xml 或json 比较简单通用。大多编程支持的编码库就好。java有json. python估计也有json库。自己搜下。

使用多线程,下面的代码,简单实现一个多线程的web服务器: #coding=utf-8import socketimport threadingfrom time import sleepdef response(sock, addr): print "收到请求" data = sock.recv(1024) print data sock.send(html) sock.close()ht...

普通情况下是不行的。但是通过线程或者进程间的数据共享,还是可以的。 提供一个思路,使用多线程socketserver,针对每一个用户创建一个服务线程,然后在线程之间通过消息队列,共享数据。 参考:刘江的Python教程中关于多线程和多进程的章节

我从网上给你拷两个例子 服务器 #!/usr/bin/python"USAGE: echoserver.py "from SocketServer import BaseRequestHandler, TCPServerimport sys, socket class EchoHandler(BaseRequestHandler): def handle(self): print "Client connected:", ...

网站首页 | 网站地图
All rights reserved Powered by www.rwhn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com