社区
网络编程
帖子详情
一台机子可以支持多少个socket连接?
upgrade_007
2009-01-21 09:04:48
比如一台游戏服务器,同时可能会有上万人在游戏。如果建立了socket长连接的话,一台机子可以保存多少个socket连接呢?请高手解答下,谢谢!
...全文
3055
24
打赏
收藏
一台机子可以支持多少个socket连接?
比如一台游戏服务器,同时可能会有上万人在游戏。如果建立了socket长连接的话,一台机子可以保存多少个socket连接呢?请高手解答下,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
24 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
redhat7890
2009-01-25
打赏
举报
回复
我说的是局域网
redhat7890
2009-01-25
打赏
举报
回复
前端时间我使用socket通信,不停开socket,但不关闭,我当时一共开了7000多个Socket,最后实在连接不上了,到达了极限!
但是我在另外一台机器上只能开3000多个socket,同一个服务器程序,我估计和网卡有很大关系!
madmanahong
2009-01-23
打赏
举报
回复
p2p跟UDP或者TCP没关系!
Eleven
2009-01-22
打赏
举报
回复
帮 Up
csgdseed
2009-01-22
打赏
举报
回复
学习
yanjing_mail
2009-01-22
打赏
举报
回复
学习
Yao_2002
2009-01-22
打赏
举报
回复
学习中....
野男孩
2009-01-21
打赏
举报
回复
非分页池就那么大,大家都要用。跑个5000,6000的就知足吧。
yc_8301
2009-01-21
打赏
举报
回复
帮忙顶,顺便学习。。
madmanahong
2009-01-21
打赏
举报
回复
第一个需要考虑的因素:
在Windows系统中,一个线程最多可以支持64个Socket。
------------------------------------
使用IOCP。应该不受到限制。处理2000个连接也就4个线程。。。。
第二个要考虑的因素:带宽限制
---------------------------------
我觉得大家计算带宽的方式很奇怪。
楼上一个人说:
另外与你带宽也有关系,一个用户流量以10K左右计算 10K*1000 = 10MB == 100Mb
我觉得这纯属伪科学。伪科学。伪科学。伪科学。伪科学。伪科学。伪科学。伪科学。伪科学。伪科学。
首先一个用户的流量10K?每秒?除非流媒体,否则不可能达到这么大数字!
其次。用户是轮训的,也就是说,在socket发送的时候,底层已经是线性处理了。如果send失败,那么你必须要等一段时间继续send。但这个时间往往是100ms以下。就跟CPU处理工作一样。如果我这一秒处理不了,下一秒处理即可,最多也就是失去了及时性,或者说响应时间。
但是总的来说,(除了流媒体这种服务器)如果能把流量用完,真的是很不容易。
金龙-Super
2009-01-21
打赏
举报
回复
Mark 一下,同时向大家学习
asssasharp
2009-01-21
打赏
举报
回复
不知道他们是怎么做的。不过,跟带宽关系也很最大吧。系统占用了那么多的资源。socket连接都不够时间片轮转的时间。
danielzhu
2009-01-21
打赏
举报
回复
第一个需要考虑的因素:
在Windows系统中,一个线程最多可以支持64个Socket。
参考原文:
Under Windows, there exists a default limit of 64 sockets used by a single signaling thread, so each signaling thread is able to handle at most 32 calls (with H.245 tunneling enabled).
链接:
http://www.gnugk.org/gnugk-manual-5.html#ss5.2
第二个要考虑的因素:带宽限制,参考前面的带宽计算方法。如果你要采用动态带宽控制,那么网上也有很多动态控制的算法,这个需要根据你自身的业务来设计。
madmanahong
2009-01-21
打赏
举报
回复
长连接20万吧。微软MSDN中说的最大数字!
作为服务器不需要占用端口,对于带宽来说也不是问题,因为流量几乎不会用完。
最重要的是内存,因为每个tcp连接至少要消耗内核内存(不分页内存)17K。
不过这个数字没意义。首先你得保证你的程序能支持。能支持1万人在线的程序员,已经很难找了。
lygfqy
2009-01-21
打赏
举报
回复
如果是系统方面基本没有什么限制
但是你每个长链接处理的时间和资源就需要看机器的配置了
否则大量用户轮过来的话,等待时间就长了
liuzxchina
2009-01-21
打赏
举报
回复
另外与你带宽也有关系,一个用户流量以10K左右计算 10K*1000 = 10MB == 100Mb
liuzxchina
2009-01-21
打赏
举报
回复
TCP的话,跑几千用户就不错了。
mayudong1
2009-01-21
打赏
举报
回复
每个连接应该要占用一个端口吧
那就是最大有端口数个连接了
百事烟
2009-01-21
打赏
举报
回复
不是高手,抄书如下:
套接字模式: 非阻塞当然多一些
套接字I/O模型 重叠I/O 和完成端口当然多一些
机器配置 配置高当然多一些
是否支持多CPU CPU多当然多一些
以上成立的大前提是代码写的要合理而有效
僵哥
2009-01-21
打赏
举报
回复
[Quote=引用 15 楼 wenqinwuhai 的回复:]
p2p技术。
[/Quote]
什么叫P2P?是想说的UDP吧?楼主明确的是“连接”.
加载更多回复(4)
AI时代,机器学习该如何入门?
机器学习入门视频教程,该课程会告诉大家如何入门机器学习,掌握机器学习必要的基础知识,了解机器学习路径。对于机器学习,很多人的观点是:机器学习技术是今后所有技术人员都绕不过的一个门槛。 那么,普通程序员该学习机器学作为一名对机器学习心有向往的程序员,我该以什么样的姿势开始呢?不妨看看该课程。
SOCKET
编程之一个端口如何建立多个TCP
连接
?(用fork子进程、select、poll、epoll都是可以的)一个端口最大
支持
建立多少个tcp
连接
?
文章目录文章1:不太清楚
socket
一个端口如何建立多个tcp
连接
,这边转载一篇文章文章2:
一台
Linux服务器最多能支撑多少个TCP
连接
?结论:
socket
服务端只用开一个端口监听(listen)
socket
请求就行,理论上来说,最大...
Java面试题17 牛客 下面哪个选项正确创建
socket
连接
?
Java面试题17 牛客 下面哪个选项正确创建
socket
连接
?
Socket
s=new
Socket
(8080);
Socket
s=new
Socket
(“192.168.1.1”,8080)
Socket
Servers=new
Socket
(8080);
Socket
s=new
Socket
Server(“192.168.1.1”,8080)...
一台
机器最多能撑多少个TCP
连接
? 今天掰扯清楚!
那就是
一台
机器最大究竟能
支持
多少个网络
连接
?我想我有必要单独发一篇文章来好好说一下这个问题。很多同学看到这个问题的第一反应是65535。原因是:“听说端口号最多有65535个,那长
连接
就最多保持65535个了”。是...
从“
一台
机器可以建立多少个
连接
“说起,65535?
一个
连接
就占用一个端口号,所以
一台
机器能建立多少个
连接
就取决于机器能开多少个端口。 tcp协议里用2个字节表示端口,考虑到0号端口不可用,
一台
机器最多只能开2^16-1=65535个端口。 所以
一台
机器最多只能同时建立...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章