On Jul 2, 6:38 pm, wolfgang amadeus <swingb...@gmail.com> wrote:
> 先测测rtt呗,还有带宽
>
On Jul 3, 4:56 pm, lau stephen <stephen....@gmail.com> wrote:
> 把微软的那个 iocp echo 的例子放上去试试。
> 通常这种情况都是找个简单干净的程序放上去对比一下。
>
> 2009/7/3 kuoxin <xin....@gmail.com>:
> > >> 签名是什么东西??- 隐藏被引用文字 -
>
> - 显示引用的文字 -
现在我采用的是第二种方法。但是想到了个问题,如果排在发送队列前面的client网络不好或数据包的流量大,势必会占用更多的时间,而影响排在发送队列后面client的响应时间。
不懂大家是怎么设计的。
2009/7/3 服务器开发 <huzhang...@gmail.com>:
2009/7/4 Eric.Wang <wangsh...@gmail.com>:
上面那位仁兄说 "局域网和互联网的网络特性不一样。要避免频繁的小块数据传输。"
那我分别开辟2K 的收发缓存会小吗?
2009/7/4 Kouga <ncw...@gmail.com>:
On 7月4日, 下午2时32分, lincoln <lincol...@gmail.com> wrote:
> 是啊,原先也是用倾向第一种方法,但如果在理论上我向1000个客户端或是更多的客户端同时投递数据,考虑到会造成内存页锁定的问题才使用了第二种案。
>
> 上面那位仁兄说 "局域网和互联网的网络特性不一样。要避免频繁的小块数据传输。"
>
> 那我分别开辟2K 的收发缓存会小吗?
>
> 2009/7/4 Kouga <ncwh...@gmail.com>:
>
> > IOCP是异步模型,要wsasend请直接调用,剩下的事情交给IOCP底层,无需用第二种设计方式,有点重复了。
>
> > 2009/7/4 lincoln <lincol...@gmail.com>
>
> >> 我在设计IOCP服务器时,有个疑问。当应用层产生完client所需要的数据包,
> >> 1.直接使用wsasend投递,
>
> >> 2.放在网络层的发送队列中,等待上个client数据包发送完毕后,再发送下个client的数据包。(比如开了四个工作线程,可以分别同时向四个client投递wsasend,当其中一个client数据投递完毕后,会通知pendingSend线程,此线程会从队列头取一个新的数据包继续wsasend。)
>
> >> 现在我采用的是第二种方法。但是想到了个问题,如果排在发送队列前面的client网络不好或数据包的流量大,势必会占用更多的时间,而影响排在发送队列后面client的响应时间。
> >> 不懂大家是怎么设计的。
>
> >> 2009/7/3 服务器开发 <huzhangyou2...@gmail.com>:
这个时候你要做的事情是 定点检测。
我提供一些检测的技术方案
1 客户端抓包, 通过 包的数据, 定义出 握手时间, 发送的时间, 接受的时间
2 服务器 打印日志, 接收数据时间, 发送数据时间
比较2者, 可以看出问题在那里,是网络还是服务器的内部运行。
具体的问题 一分析就可以了, 这种问题很常见,也很好定位。
On 7月4日, 下午2时32分, lincoln <lincol...@gmail.com> wrote:
> 是啊,原先也是用倾向第一种方法,但如果在理论上我向1000个客户端或是更多的客户端同时投递数据,考虑到会造成内存页锁定的问题才使用了第二种案。
>
> 上面那位仁兄说 "局域网和互联网的网络特性不一样。要避免频繁的小块数据传输。"
>
> 那我分别开辟2K 的收发缓存会小吗?
>
> 2009/7/4 Kouga <ncwh...@gmail.com>:
>
> > IOCP是异步模型,要wsasend请直接调用,剩下的事情交给IOCP底层,无需用第二种设计方式,有点重复了。
>
> > 2009/7/4 lincoln <lincol...@gmail.com>
>
> >> 我在设计IOCP服务器时,有个疑问。当应用层产生完client所需要的数据包,
> >> 1.直接使用wsasend投递,
>
> >> 2.放在网络层的发送队列中,等待上个client数据包发送完毕后,再发送下个client的数据包。(比如开了四个工作线程,可以分别同时向四个client投递wsasend,当其中一个client数据投递完毕后,会通知pendingSend线程,此线程会从队列头取一个新的数据包继续wsasend。)
>
> >> 现在我采用的是第二种方法。但是想到了个问题,如果排在发送队列前面的client网络不好或数据包的流量大,势必会占用更多的时间,而影响排在发送队列后面client的响应时间。
> >> 不懂大家是怎么设计的。
>
> >> 2009/7/3 服务器开发 <huzhangyou2...@gmail.com>: