Web网站的几个并发量级

标签: www 硬件相关 | 发表时间:2013-03-27 03:27 | 作者:Litrin
分享到:
出处:http://www.litrin.net

评价一个网站的“大小”,处于视角的不同,有很多种衡量的方法,类似文章数,页面数之类的数据非常明显,也没有什么可以争议的。但对于并发来说,争议非常之多,这里就从一个技术的角度开始,谈谈几个Web网站的数量级。

相信很多人谈论一个网站的热度,总免不了会询问日均PV,同时在线人数、注册用户数等运营数据,说实话从技术角度来说,这几个数值没有一个可以放在一起比较的——一个静态网站的PV跟一个SNS类/Web Game网站的PV根本就不是一回事。由于互联网有一个传说中的“3秒定律”,可能当下更多的网站技术指标要求1.5秒以内加载整页,或者至少可以达到阅读的标准。如果要较真什么“同时在线”,毫不客气的说,对于HTTP这类短链接的网络协议来说,在WebSocket还不普及的时代,能统计在线纯属扯淡,唯一能做的只是取个时间段,计算下访问用户而已。这些依然可以换算成QPS(Quest Per Second每秒请求数)。就并发而言,我唯一推崇的只有理论最大QPS和悲观QPS。

这里就大致根据理论最大QPS,给网站做几个分类

50QPS以下——小网站

没什么好说的,简单的小网站而已,就如同 本站这样,你可以用最简单的方法快速搭建,短期没有太多的技术瓶颈,只要服务器不要太烂就好。

50~100QPS——DB极限型

大部分的关系型数据库的每次请求大多都能控制在0.01秒左右,即便你的网站每页面只有一次DB请求,那么页面请求无法保证在1秒钟内完成100个请求,这个阶段要考虑做Cache或者多DB负载。无论那种方案,网站重构是不可避免的。

300~800QPS——带宽极限型

目前服务器大多用了IDC提供的“百兆带宽”,这意味着网站出口的实际带宽是8M Byte左右。假定每个页面只有10K Byte,在这个并发条件下,百兆带宽已经吃完。首要考虑是CDN加速/异地缓存,多机负载等技术。

500~1000QPS——内网带宽极限+Memcache极限型

由于Key/value的特性,每个页面对memcache的请求远大于直接对DB的请求,Memcache的悲观并发数在2w左右,看似很高,但事实上大多数情况下,首先是有可能在次之前内网的带宽就已经吃光,接着是在8K QPS左右的情况下,Memcache已经表现出了不稳定,如果代码上没有足够的优化,可能直接将压力转嫁到了DB层上,这就最终导致整个系统在达到某个阀值之上,性能迅速下滑。

1000~2000QPS——FORK/SELECT,锁模式极限型

好吧,一句话:线程模型决定吞吐量。不管你系统中最常见的锁是什么锁,这个级别下,文件系统访问锁都成为了灾难。这就要求系统中不能存在中央节点,所有的数据都必须分布存储,数据需要分布处理。总之,关键词:分布

2000QPS以上——C10K极限

尽管现在很多应用已经实现了C25K,但短板理论告诉我们,决定网站整体并发的永远是最低效的那个环节。我承认我生涯中从未遇到过2000QPS以上,甚至1.5K以上的网站,希望有此经验的哥们可以一起交流下

相关 [web 网站 量级] 推荐:

Web网站的几个并发量级

- - 开源小站
评价一个网站的“大小”,处于视角的不同,有很多种衡量的方法,类似文章数,页面数之类的数据非常明显,也没有什么可以争议的. 但对于并发来说,争议非常之多,这里就从一个技术的角度开始,谈谈几个Web网站的数量级. 相信很多人谈论一个网站的热度,总免不了会询问日均PV,同时在线人数、注册用户数等运营数据,说实话从技术角度来说,这几个数值没有一个可以放在一起比较的——一个静态网站的PV跟一个SNS类/Web Game网站的PV根本就不是一回事.

十问Web网站项目

- - 博客园_新闻
英文原文: 10 Important Questions to Ask About Your Next Website Project. Ltd 开发者 Richa Jain 在本文中为我们带来了一个有趣的话题:在一个 Web 网站项目中,我们应该问自己十个这样的问题. 如果你在开发的过程中存在疑惑,或许你可以在本文中获得帮助.

优秀的轻量级Web服务器

- - Solidot
Alison Neville 写道 "Web服务器是一种使用超文本传输协议(HTTP)响应客户端请求提供网页的计算机软件,以HTML文件、图像、样式表和脚本的形式构成网页内容. Apache是​​最流行的Web服务器软件,提供了最新的协议实现,优秀的特性集,具有高可配置和可扩展性. Apache被一半以上的活跃网站所使用.

HTML5 Web Speech API,让网站更有趣

- - SegmentFault 最新的文章
Web API 变得越来越丰富,其中一个值得注意的是 Web Speech API. 传统的网站只能“说”,这个API的出现,让网站能“倾听”用户. 这个功能已经开放了一系列的用法,非常棒. 在这篇文章中,我们将看一下这项技术和建议的用法,以及如何用它来增强用户体验的一些好例子. 声明:本技术比较前沿,目前该规范是W3C的“非官方编辑器的征求意见稿”(截至2014年6月6日).

Nginx 1.1.2 发布,轻量级Web服务器

- lastland - cnBeta.COM
Nginx(发音同 engine x)是一款在BSD-like协议下发行的轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器. 由俄罗斯的程序设计师 Igor Sysoev所开发,最初供俄国大型的入口网站及搜寻引擎Rambler(俄文:Рамблер)使用. Nginx特点是占有内存少,并发能力强,事实上 Nginx的并发能力确实在同类型的网页服务器中表现较好.

Java 开发 2.0: 使用 Gretty 的超轻量级 Java Web 服务

- 圣斌 - IBM developerWorks 中国 : 文档库
Gretty 是构建 Web 服务超轻量级框架的新学派之一. 构建于极快的 Java NIO API 之上,Gretty 将 Groovy 用作 Web 端点和 Grape 的 Maven 式依赖关系管理的一种域特定语言. 本文介绍如何开始使用 Gretty 来构建和部署 Java Web 服务应用程序.

轻量级的移动 Web 应用开发框架:Sidetap

- - 我爱水煮鱼
Sidetap 是一个简洁轻量级的移动 Web 应用开发框架,它专注于提供类似于 Path 或者 Sparrow 这样的侧导航形式的 UI 体验. 轻量级:缩减压缩后只有2KB. 方便配置,让你立刻开始开发应用. 依赖jQuery(1.7.2)或者zepto.js. 创建 HTML 架构,参考: skeleton.html.

工具推荐:Raptor WAF,轻量级WEB应用防火墙

- - FreeBuf.COM | 关注黑客与极客
Raptor是一款采用C语言编写的WEB应用防火墙,使用DFA来阻止SQL注入、Xss目录遍历等攻击. 在80端口开启httpd服务并上传一些东西:. 复制存在漏洞的PHP代码到WEB目录:. 现在你可以在 http://localhost:8883/test.php 测试Xss攻击了. *原文: GitHub ,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM ).

Web开发人员应当收藏的10个网站

- Joro - 译言 - 编辑荐读
来源10 sites developers should have in their bookmarks.          互联网上有数百万的网站可以提供服务,其中只有一些对Web开发员来说是极为有效的工具. 在本文中,Jean-Baptiste Jung整理出了10个极有用的网站,绝对值得Web开发者收藏到书签中.