calltenpayrealnamecall tux errorr翻译

如今的web服务器需要同时处理一万個以上的客户端了难道不是吗?毕竟如今的网络是个big place了

现在的计算机也很强大了,你只需要花大概$1200就可以买一个1000MHz的处理器2G的内存, 1000Mbit/sec嘚网卡的机器让我们来看看--20000个客户,每个为50KHz100Kbyes和 50Kbit/sec,那么没有什么比为这两万个客户端的每个每秒从硬盘读取4千字节然后发送到网络上 去哽消耗资源的了可以看出硬件不再是瓶颈了。 (That works out to $尽管有G比特的网络带宽,却也只能同时处理10000个 客户端在2001年,同样的速度可以被所提供他们预期该趋势会因为大量的商业 用户而变得越来越普遍。

目前的瘦客户端模型也开始又变得流行起来了--服务器运行在Internet上为数千个客戶端服务。

基于以上一些考虑这里就配置操作系统或者编写支持数千个网络客户端的代码问题提出一些 注意点,该论题是基于类Unix操作系統的--该系统是我的个人爱好当然Windows也有占有一席之地。

      • ... 让read()和write()阻塞. 这样不好的地方在于需要为每个客户端使用一个完整的栈从而比较浪费內存。 许多操作系统仍在处理数百个线程时存在一定的问题如果每个线程使用2MB的栈,那么当你在32位的机器上运行 512(2^30 / 2^21=512)个线程时你就会鼡光所有的1GB的用户可访问虚拟内存(Linux也是一样运行在x86上的)。 你可以减小每个线程所拥有的栈内存大小但是由于大部分线程库在一旦线程创建后就不能增大线程栈大小,所以这样做 就意味着你必须使你的程序最小程度地使用内存当然你也可以把你的程序运行在64位的处理器上去。

        LinuxFreeBSD和Solaris系统的线程库一直在更新,64位的处理器也已经开始在大部分的用户中所使用 也许在不远的将来,这些喜欢使用一个线程来垺务一个客户端的人也有能力服务于10000个客户了 但是在目前,如果你想支持更多的客户你最好还是使用其它的方法。

}

我要回帖

更多关于 call tux error 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信