将文件数据发送到多个客户端?

时间:2012-02-20 15:37:31

标签: java networking asynchronous nio channel

我正试图找出为一次处理多个客户端的客户端/服务器系统编写数据传输代码的最佳方法。

我已经保留了连接的客户列表(我正在使用NIO非阻塞框架btw)。

通过每次读/写传递迭代每个客户端并将缓冲区数据写入每个通道,性能是否代价高昂?有更好/更有效的方法吗?

我一直在考虑根据客户端数量来划分缓冲区大小。这是一个可行的解决方案吗?

1 个答案:

答案 0 :(得分:1)

当您处理大量客户时,使用选择器(就像您似乎正在做的那样)确实付出了代价(以及为什么在的情况下优化的情况下优化?客户;)

这种系统的瓶颈很少是进行迭代的CPU,但无论如何都是I / O,所以我不担心我在哪里。