在即时通信软件中中,如何提高服务器支持的最大连接数/并发数
来源:互联网 发布:淘宝美工在家兼职 编辑:程序博客网 时间:2024/04/30 14:36
比较不错的讨论,记下来。
http://www.linuxforum.net/forum/gshowthreaded.php?Cat=&Board=program&Number=534096&page=1&view=expanded&sb=5&o=all
还有我认为这个并发数的问题,要从硬件,软件几个层次来看,还有这个网络环境。
1,首先是网络环境,如果网络带宽有限制,这个数据上不来。
2。考虑这个单机的硬件特性,首先就是这个网卡的性能,网卡对大包小包的处理速度怎么样。还有这个系统的总线结构,磁盘与网卡对总线的共享问题。如果有频繁的磁盘操作,这个总线的竞争将会产生。
还有的就是这个内存的访问速度,这个访问对性能的影响也是很大的。在通信服务器的开发中,我见到的基本上对这个内存的操作是比较频繁的。所以我的建议是如果有可能增加这个CACHE的大小。提高访问速度。最后就是这个CPU的性能
3。考虑这个操作系统的性能。比如这个网络协议栈的性能。比如这个最大的TCP并发数目,就跟里面的排队有关系。每个进程里面文件描述符的最大数目,每个进程占用的内存的大小,等等。这个需要考虑操作系统的自身特点。
前面几个都跟具体的运行环境有关系。只能通过测试来评估啦。选择一个比较好的运行平台。
后面就是要考虑这个通信服务器的结构设计了。主要就是单线程,多线程,线程池等等。我看了一个资料,上面说的一句话,我比较同意,基本上在设计中就用它作标准了:如果调度时间超过了每个线程的处理时间,那么就用单线程,否则就用多线程。不知是佛正确。
还有对与这个通信服务器的设计问题,我想主要就是对这个负载的分布问题,需要把负载分布到那些地方去。有的是用空间换时间,有的是用时间换空间,这个在设计中要仔细权衡。
http://www.linuxforum.net/forum/gshowthreaded.php?Cat=&Board=program&Number=534096&page=1&view=expanded&sb=5&o=all
还有我认为这个并发数的问题,要从硬件,软件几个层次来看,还有这个网络环境。
1,首先是网络环境,如果网络带宽有限制,这个数据上不来。
2。考虑这个单机的硬件特性,首先就是这个网卡的性能,网卡对大包小包的处理速度怎么样。还有这个系统的总线结构,磁盘与网卡对总线的共享问题。如果有频繁的磁盘操作,这个总线的竞争将会产生。
还有的就是这个内存的访问速度,这个访问对性能的影响也是很大的。在通信服务器的开发中,我见到的基本上对这个内存的操作是比较频繁的。所以我的建议是如果有可能增加这个CACHE的大小。提高访问速度。最后就是这个CPU的性能
3。考虑这个操作系统的性能。比如这个网络协议栈的性能。比如这个最大的TCP并发数目,就跟里面的排队有关系。每个进程里面文件描述符的最大数目,每个进程占用的内存的大小,等等。这个需要考虑操作系统的自身特点。
前面几个都跟具体的运行环境有关系。只能通过测试来评估啦。选择一个比较好的运行平台。
后面就是要考虑这个通信服务器的结构设计了。主要就是单线程,多线程,线程池等等。我看了一个资料,上面说的一句话,我比较同意,基本上在设计中就用它作标准了:如果调度时间超过了每个线程的处理时间,那么就用单线程,否则就用多线程。不知是佛正确。
还有对与这个通信服务器的设计问题,我想主要就是对这个负载的分布问题,需要把负载分布到那些地方去。有的是用空间换时间,有的是用时间换空间,这个在设计中要仔细权衡。
- 在即时通信软件中中,如何提高服务器支持的最大连接数/并发数
- 提高服务器并发连接数
- 如何限制Samba服务中一个共享的最大并发连接数?
- 测试服务器的最大并发的连接数
- 限制服务器最大并发连接数(47)
- 读书笔记-限制服务器最大并发连接数的方法
- 如何在apache中设置每个连接的最大请求数
- 在Azure中使用Load Runner测试TCP最大并发连接数
- Impala中最大连接数的设置
- iOS 支持最大的并发数
- iOS GCD中如何控制最大并发数
- 如何在Windows XP 的IIS中增加多个站点以及如何增大最大连接数。
- 【工具设置】如何在Windows XP 的IIS中增加多个站点以及如何增大最大连接数。
- Linux如何查看服务器的并发数? 使用netstat命令查看并发连接数
- Linux如何查看服务器的并发数? 使用netstat命令查看并发连接数
- 如何修改windows服务器最大的tcp连接数
- 如何修改windows服务器最大的tcp连接数
- 服务器 最大连接数:
- 安全
- [原创]VMware best practise[VMware最佳实践]
- .NET平台下Web树形结构程序设计
- 近期(一年内)的任务:非官方版
- Linux如何分区以及其他
- 在即时通信软件中中,如何提高服务器支持的最大连接数/并发数
- 写入、读取、清除Cookie的类
- Linux下安装MySQL
- 关于Asp.net应用中cookie的问题处理
- 不得不说两句,让人欢喜让人忧的P/Invoke (平台调用)
- VC中利用多线程技术实现线程之间的通信
- 在DataGrid页眉上添加全选的CheckBox控件
- Linux下安装jdk
- Linux下安装Eclipse