【真实数据】日访问量一万PV的网站需要什么配置的服务器?

作者: ʘᴗʘ发布时间:2021-12-18 21:51 浏览量:984 点赞:634 售价:0

懒得看概念、过程分析的朋友,直接跳到最后看结论即可。

很多朋友对并发(QPS)的概念比较模糊,经常有朋友问作者,并发数一万的网站需要什么配置的服务器。其实,这里提问者的意思应该是日访问量一万的网站,毕竟并发数能到一万以上的网站,全国都没几个。

下面我们就来算一下日访问量一万PV的网站,需要什么配置的服务器:

  • 根据八二定律,80%的流量,都发生在20%的时间内。同时,一个网页假如有20个请求。所以计算得出20*10000*0.8/(3600*24*0.2)=9.2,代表每秒差不多10个并发请求。
  • 不同业务的网站、不同的网页复杂度不同,用户打开时给服务器造成的压力不同。这里以coderbbb博客作为案例分析。
  • 达到极限的标准是:服务器CPU、内存等资源占满耗尽;用户网页打开响应时间超过500毫秒。两者先到为准。

我们以coderbbb博客的真实数据作为基准,推测日访问一万PV的网站需要什么配置的服务器:

coderbbb早期访问量较低时,采用阿里云2C2G的低端服务器。后来到日访问量4K左右时,高峰期会出现明显的卡顿。主要是因为coderbbb单个网页包含的请求比较多,将近30个。

之后,coderbbb做了技术优化,把部分耗时较久、占用服务器资源多的请求,做了优化(缓存、延迟更新等等),压测显示性能提升了100倍不止(可以参考文章【性能提升100倍】springboot+thymeleaf缓存html网页提高并发性能

结论

日访问量一万PV的网站,主要看你是什么类型的网站,是否包含大量的复杂请求(数据库查询、更新、计算等等)。如果你是展示类型的网站,比如博客、电商、小说等等,那么在合理构建缓存的前提下,一台阿里云最低端的2C2G的服务器就足够了。

以上结论只能做参考,因为网站和网站之间差距很大,技术架构完全不同。大多数情况下,出现并发瓶颈都是在数据库等地方,服务器本身其实不会有太大的压力。

其他案例

某共享出行公司业务,日活用户10万,因为出行业务的特殊性,90%的流量集中在上下班高峰期,并发量能到1万左右。但是出行类业务,包含大量物联网操作(开关车、租还车等等),所以整个集群有将近50台服务器,配置平均是8C16G。其中大部分是处理物联网数据的,承担业务逻辑的服务器其实有5台就差不多了。

所以,不能以并发数高低直接判定服务器压力。不同的业务场景下会有天差地别的差距。

版权声明:《【真实数据】日访问量一万PV的网站需要什么配置的服务器?》为CoderBBB作者「ʘᴗʘ」的原创文章,转载请附上原文出处链接及本声明。

原文链接:https://www.coderbbb.com/articles/57

其它推荐:

  • Intellij IDE代码行数统计插件Statistic推荐

    本文介绍了一种能够快速统计IntelliJ项目代码行数的插件:Statistic,通过该插件可以快速查看各个项目、目录的代码行数,还能具体查看项目中不同代码语言的具体行数,十分方便。

  • maven jar包新版本检测工具推荐

    maven构建的工程时间久了,想升级pom.xml中引入的jar包版本很繁琐,需要逐一检查、替换、升级。本文介绍了一种可以快速检测、升级pom.xml中jar包的工具,可以方便的为maven构建的工程升级依赖jar包。

  • 【亲测有效】解决win10 git文件状态图标不显示的问题

    本文解决了win10系统下Git文件状态图标不显示的问题,并详细讲解了问题的根本原因。如果你也遇到了类似win10系统overplay icon图标不显示的问题,请参考本文解决。

  • IntelliJ IDEA设置中文界面实现汉化(适用于Jetbrains全家桶中的任意IDE)

    本文介绍了如果通过Jetbrains官方中文语言包,实现IntelliJ IDEA等Jetbrains全家桶软件的汉化工作,配置实现Intellij等软件的中文界面。

  • Java实现版本号比较算法

    本文通过Java实现了判断常见版本号的比较算法,支持数字、特殊符号、字母等多种字符构成的版本号比较。

  • java使用Gzip压缩Json字符串

    本文提供了一个使用java内置的Gzip算法压缩字符串(比如JSON)的压缩、解压缩类,使用本文的代码可以方便的压缩将JSON的体积压缩一半以上。

  • linux环境后台运行、重启springboot jar包脚本命令

    本文介绍了如何在linux上通过shell脚本来运行、重启jar包。在安装git、nginx后,还支持代码push到git后,借助gitlab等的webhook钩子功能,自动重启服务器上的jar包,实现最简单的部署效果。

  • 通过Maven将指定Jar包下载到指定的本地目录

    本文介绍如何使用maven把一些需要下载到本地的Jar包下载下来。有时候我们开发一些java项目的时候,并没有使用maven管理包,但是又需要一些常用的包,那么可以使用maven来将这些包下载到本地,从而导入项目

  • 【最简单】springboot自定义配置404错误页面

    本文详细介绍了在springboot中如何自定义404错误的返回信息,可以自定义为一个HTML网页,也可以自定义返回JSON等。逻辑简洁明了,代码可以直接复制使用。

  • 【thymeleaf文档精华版】springboot thymeleaf常用语法中文教程

    现在虽然Vue、React等前端框架盛行,但是部分需要SEO的页面,还是得用thymeleaf之类的模板引擎来渲染。thymeleaf的官方文档,写的太过详细,显得比较啰嗦。本文主要是把thymeleaf官方的英文文档,结合作者自己的使用经验,整理成了一篇可以用来速查的中文教程,方便大家。

user

ʘᴗʘ

77
文章数
73784
浏览量
57442
获赞数
67.80
总收入

本文目录