Socket压力测试问题,服务端Socket长连接循环接收并处理信息

Socket压力测试问题,开启多个客户端程序循环访问服务端,服务端Socket长连接循环接收并处理信息,这时就出现了问题。按照流程应该是客户端发送一次数据访问服务端,服务... Socket压力测试问题,开启多个客户端程序循环访问服务端,服务端Socket长连接循环接收并处理信息,这时就出现了问题。
按照流程应该是客户端发送一次数据访问服务端,服务端就会做出回应返回给客户端。
可是如图红色标记处,循环访问后,服务端就会一批批的返回信息。请问各位高人,到底是哪里出了问题呢?能否贴个例子呢 帮帮忙 万分感谢!!!
多台客户端在循环不停的发数据给服务端,服务端需要收到一条消息就及时的做出处理,然后再接收消息再处理。这个怎样实现呢?能否给个简单的例子?或者重要的几行代码也好。谢谢。
展开
 我来答
chang_le_2000
2012-02-20 · 超过12用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:35.5万
展开全部
采用多线程,服务器端每ACCEPT一个连接后,针对生成的CLIENTSOCKET创建一个线程,在每个新建的线程中完成通信交互过程,大概不会出现你说的问题了。
PS,还有一点一定要牢记,就是TCP 流式套接字只保证“有序无误”,但不能保证收发双方的次数和内容一定相同,就是说可能发100次,但是接收次数可能只有一次。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
oazg
2012-02-17 · 超过14用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:25.1万
展开全部
这个看代码才好解决的。你大概问,我也只能大概答。
如果单发1次返回2次,那是你代码问题造成重复发送。
如果多线程同步发,那返回2次或者多次时正常的。
如果多客户端多线程同步发,单客户端返回2次,确定是异常,那么也是你编码问题造成的逻辑混乱。

1,服务端接受编码逻辑混乱。
2,接收缓冲没复位。
3,客户端接受编码和发送编码不同步,发了2次,接受线程优先级低,接受的时候就2次一起接受了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wlsc520
2012-05-04 · 超过34用户采纳过TA的回答
知道答主
回答量:165
采纳率:0%
帮助的人:106万
展开全部
Socket通信的原理还是比较简单的,它大致分为以下几个步骤。
服务器端的步骤如下。

(1)建立服务器端的Socket,开始侦听整个网络中的连接请求。

(2)当检测到来自客户端的连接请求时,向客户端发送收到连接请求的信息,并建立与客户端之间的连接。

(3)当完成通信后,服务器关闭与客户端的Socket连接。

客户端的步骤如下。

(1)建立客户端的Socket,确定要连接的服务器的主机名和端口。

(2)发送连接请求到服务器,并等待服务器的回馈信息。

(3)连接成功后,与服务器进行数据的交互。

(4)数据处理完毕后,关闭自身的Socket连接。

代码参考资料
http://www.quhs.com/aspnet/6578_3.html

参考资料: http://www.quhs.com/aspnet/6578_3.html

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式