【浅谈】ISS限制、CPU限制与流量限制的区别

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

本文同时参与「掘力星计划」,赢取创作大礼包,挑战创作激励金。

当前的虚拟主机主要分为三类流量限制,下面就来看看这三类流量限制到底有什么差异~

1. 流量限制

流量限制说白了就是直接限制网络的流量,这种限制通常是最严格的的一种流量限制方式,10G 的流量大体支持 50 人以内在线,当月流量超过后,在一个月内网站都不能正常访问了。

解决办法:升级空间或者加大流量!

2. CPU 限制

CPU 限制看起来没有限制 IIS 或网络流量,但由于每一个程序运行都需要一定的 CPU 配额,所以 CPU 限制也是变相的流量限制, 通常网页显示在线过多都是由于 CPU 限额过小引起的!通过刷新或 15s 后可以得到暂时的正常运行,通常 1% 的 CPU 限额相当于 20 个 IIS 连接!这对于论坛空间很重要,论坛的 CPU 限额一旦过小就不能正常运行。

3. IIS 限制

IIS(Internet Information Services,即互联网信息服务) 限制是现在使用最多的,也是被大多用户或主机商认可的,是唯一宽松的流量限制,通常 20 个 IIS 就相当于 1% CPU 占用!

总而言之,虚拟主机实际上没有不限流量的,总的可以分为以上三种方式,你如何选择要看你的需求,如果你的程序占用 CPU 很少,是优化的程序可以选择限 CPU,这样你的在线就可以得到最大的发挥;如果你是初学者,或是论坛用户,又或是网站程序中有 bbs(Bulletin Board System),选择 IIS 限制或直接流量限制是一个好的选择!

4. 其他

4.1 关于同时连接数和在线人数问题的详解

很多用户对连接数的概念认识都很模糊,现介绍如下:

1)浏览者访问站点,必需与站点通过 TCP 协议建立连接。这个连接在从服务器上读取信息时存在,读取结束时,一般即自动关闭。所以,当一个页面已经完全地显示在客户端的显示器上时,使用的连接也许已经关闭了

2)每个浏览者访问某站点时,可能会占用 1-3 个连接,这是由计算机自动处理的,这样做的目的是为了加快速度

⭐相关问题:所以,对于连接数为 30 的基础型主机而言,有时只能十几个人访问,就不足为怪了。

3)论坛中统计的在线人数,是以某一时间段内访问论坛的活动人数为标准的,与连接数应无关系。比如动网论坛,默认好像是 40 分钟内的活动人数。也许论坛显示某用户还在线,但该用户由于没有正在读取论坛中页面,所以也就不会占用连接数。

⭐相关问题:

  • 所以,只要浏览者对论坛的访问不过于集中,不会在某一时间点超出最大同时连接数,则论坛中统计的在线人数,会大大超出空间允许的最大同时连接数。
  • 若用户为了显示论坛的人气,可以在调大论坛统计在线人数的时间范围(动网论坛提供此功能),甚至可以将一天内所有浏览你站点的人,都算作在线人数。

4)虽然服务器中可以规定每个站点的最大连接数,但同时也存在服务器的总计最大连接数。所以,即使规定用户站点的最大连接数为不限,当服务器达到了最大连接数时,仍不能访问站点。而服务器的最大连接数一般在 1000-2000。

⭐相关问题:

  • 这就是为什么服务商敢于开出不限连接数的主机,本质上不是无限连接数的!
  • 西部数码提供的主机,允许连接数均较高,应该可以满足用户需求。

5)现在的主机服务中,有些服务商利用许多人对上述概念模糊,而误导消费者,所以购主机者应谨慎从事!

4.2 什么是 IIS 连接数

IIS 连接数指并发连接数,什么意思呢?
要分几种情况:(以 100M 空间 50 人在线为例)

用户单点下载你的文件,结束后正常断开,这些连接是按照瞬间计算的,就是说你 50 人的网站瞬间可以接受同时 50 个点下载。
用户打开你的页面,就算停留在页面没有对服务器发出任何请求,那么在用户打开页面以后的 20 分钟内也都要算一个在线,就是说你 50 人的网站 20 分钟内可以接受不同用户打开 50 个页面。
上面情况Ⅱ的用户继续打开同一个网站的其他页面,那么在线人数(非 IIS 连接数) 按照用户最后一次点击(发出请求)以后的 20 分钟计算,在这 20 分钟内不管用户怎么点击(包括新窗口打开)都还是 1 人在线。
对于一般网站,基本上都在同一浏览器窗口进行链接访问,很少用弹出窗口,这样一个访问者就只占一个 IIS 连接数,正常情况 50 个 IIS 可保证 25-40 人同时在线;而一些像论坛、江湖社区这样的程序,访问者通常都是开 2-3 个窗口访问,150 个 IIS 才能保证 50-75 人同时在线
当你的页面内存在框架(iframe),那么每多一个框架就要多一倍的在线人数!因为这相当于用户同一时间向服务器请求了多个页面。
当用户打开页面然后正常关闭浏览器,用户的在线人数也会马上清除。

刚刚上面第Ⅱ、Ⅲ、Ⅴ、Ⅵ都讲到了在线人数,接下来了解一下什么是论坛在线人数
论坛在线只是计算一定时间内的活动用户数。
这里的时间用户可以自己设定,动网论坛默认为 40 分钟的相对准确值。
根据上面的说明,显然论坛在线和 IIS 连接数的概念不同
为什么会出现 IIS 连接数和论坛在线不符合的情况?

现具体分析如下:

  1. 你使用了插件版论坛或者美化版论坛
    • 现在的插件很 **,不但占服务器资源,而且会使论坛运行变慢(没有插件可以快一倍以上),同时很占在线人数,有的插件调用很多框架,少则 2、3 个,多则 4、5 个! 甚至有在线播放音乐,这样一个人在线就相当与很多人在线!
    • 而美化版论坛因为使用大量的图片,也同样比标准版论坛占 IIS 数量大。
  2. 你网站是 主页+论坛 的形式!
    • 这样主页和论坛要争夺你的在线人数!
  3. 你的论坛内部有播放器
    • 一个人在线,然后他在线播放音乐,就占二个人在线!
  4. 你的论坛内部存在框架形式的网页
    • 每一个框架,就多一倍的在线!
  5. 你的论坛设置在线时间过小
    • 动网默认为 40 分钟,因为论坛在线只是计算一定时间内的活动用户数,当你设定的时间较小的时候,看起来论坛在线的人数就自然少了!
  6. 你的空间存在多个论坛
    • 有的客户在一个空间里上传多个论坛,如 bbs、bbs1、bbs2 等等,毫无疑问,这些论坛也是要争夺再线人数的!
  7. 你的论坛图片等文件被人盗链
    • 比如:你的论坛有张图片文件,被粘贴(注意是粘贴不是上传)到别的论坛!那么别的论坛的用户在浏览该文件的时候也算一个在线人数!尤其是 LOGO 链接的时候注意,一定要对方把你的 LOGO 上传到他的空间!
  8. 你的空间上放有下载文件
    • 如果用户用网络蚂蚁类的软件,每一个线程就表示一个在线,非常厉害!

⭐解决办法:
1、去掉垃圾的插件版,用标准版!
2、尽量不要采用框架的形式制作页面!
3、不要放任何的音乐、电影、下载!
4、防止盗连情况的发生!
5、升级购买支持更多在线人数的空间!

4.3 小结

🔥所有基于 IIS 的 Windows 类服务器同时连接数都是有限的,连接过多将直接导致服务器不稳定、掉线。严重的还会导致服务器 IIS 进程中断甚至整个操作系统崩溃。Linux 的服务器也是同样类似。要注意的是 IIS 连接数并不是日访问人数或在线人数,IIS 连接数是指同一时间的最大响应数。

🔥可以说 IIS 连接数才是虚拟主机性能最直接的标准,所有空间的价格都是根据 IIS 数的多少设定的,这样保证了对客户最大的公平。 所以,建议用户:不用 frame 结构的网页,不要和其它网站交换 LOGO 链接,减少弹出窗口。

希望本文对你有所帮助🧠
欢迎在评论区留下你的看法🌊,我们一起讨论与分享🔥