一个客户端socket多线程请求数据,recv时数据混乱?接收数据时出现混乱的原因是接收到的数据不能用来区分哪个请求是相应的数据。在处理同一“socket”中需要请求不同服务的问题时,常用的方法是在返回的数据中标识相应的请求
一个客户端socket多线程请求数据,recv时数据混乱?
接收数据时出现混乱的原因是接收到的数据不能用来区分哪个请求是相应的数据。在处理同一“socket”中需要请求不同服务的问题时,常用的方法是在返回的数据中标识相应的请求。
例如re澳门威尼斯人q:ID->1,返回的《读:de》是RSP:ID->1;req:ID->2
然后客户端世界杯可以根据返回的ID找到相应的请求,并对数据进行区分,这样就不会产生混{拼音:hùn}淆。
锁定只能确保套接字同时处理一个请求,不能保证客户端能够正确区分与请求对应的返回世界杯数(拼音:shù)据。
如何用python写一个高并发的服务端?
作为一个高并发服务器,python应该考虑多线程的局限性,而多线程模式的并发能力并不是最优的。您可以参考nginx的实现,并用协进程的概念来响应,以提高并发性和吞吐量。业务逻辑不应该有太多的阻塞操作。建议参考gevent twisted和其他异步框架本文链接:http://10.21taiyang.com/Health-Conditions/12133261.html
TCP的socket编程多(拼音:duō)线程转载请注明出处来源