新闻动态

高并发:高并发下如何缩短响应时间?

发布日期:2019-06-03 18:49 | 文章来源:YINGSOO

  【小编提示】本文部分内容摘自网络,仅供参考!如需了解服务器租用\托管相关问题,请咨询YINGSOO专业客服,享受1V1贴心服务!免费热线400-630-3752

  【本周热销】香港高防服务器香港云服务器租用美国云主机美国主机租用

  【选购帮助】租用国外服务器能干嘛?要注意什么?

高并发

  一、定义

  网站响应时间是指系统对请求作出响应的时间。通俗来讲,就是我们把网址输入进浏览器然后敲回车键开始一直到浏览器把网站的内容呈现给用户的这段时间。网站响应时间越短越好,因为网站页面打开速度越快,就意味着我们的用户可以更快地访问站点或者我们的服务器。一般网站的响应时间保持在100~1000ms即可,1s=1000ms,打开速度越快对用户体验度越好。

  响应时间并不能直接反映网站性能的高低,但是在一定程度上反应了网站系统的处理能力,也是给用户最直观的感受。如果网站的响应时间过长,比如10秒以上,用户的流失率会大大增加,所以把响应时间控制在一定范围内是提高用户体验度的第一要素。

  二、解决方案

  当用户请求一个网站数据的时候,实际上是发送了一个Htt[英国vps]p请求,在宏观上可以分为两个部分:

  Http请求到达目标网站服务器之前;

  Http请求到达目标网站服务器之后。

  如果忽略其中硬件部分和部分细节,请求一个网站数据的大体过程如下图所示(其中cdn和缓存部分可以省略):

  我们要想缩短一个网站的响应时间,本质上是提高数据的返回速度,说的直白一点就是要把请求数据过程中的各个步骤提高速度,这样整体下来响应时间就会缩短。

  把数据放在离用户越近的地方响应时间越快。

  客户端

  客户端是发起一个网站请求的源头,其实这个源头可以施加一定的策略来大大缩短某些数据的获取时间。其中最为常用的就是缓存,一些常用的、很少变动的资源缓存在客户端,不但能缩短获取资源的时间,而且在很大程度上能减轻服务端的压力。比如一些图片、css、Js文件,甚至一些接口的数据或者整个网页内容都可以在客户端做缓存。另外Http请求的合并也可以减少对服务端的请求次数,在一定程度上可以缩短请求的响应时间。

  dns

  一般网站的访问方式都采用域名的方式(很少见ip方式),既然是域名就涉及到dns解析速度的问题,如果dns服务解析的速度比较慢,整体过程的响应时间也会加长,不过这个过程其实很少出现慢的问题(不是说没有)。

  网络

  客户端获取到网站ip之后通过网卡把Http请求发送出去,目标地址为相应的网站服务器。在这个过程当中如果客户端和服务器端有一方带宽比较小的话,就会加大响应时间。我司曾经就因为服务器带宽过小导致客户端响应时间很长的情况,当时排查[云服务器托管]了很长时间才发现。

  当然网络是不可靠的,这个过程的响应时间其实取决于很多因素,比如路由器的路由策略是否最优,整个过程通过的网关数据量等。所以有很多网站其实是多地区多机房部署的,目的就是为了让用户通过很短的网络路径就能到达网站(其实这个过程运营商的选择也有影响)。

  网站

  当一个请求到达网站服务器,服务器便开始处理请求,一般会有专门处理业务请求的一个业务层,有的体现为Rpc协议的微服务,有的体现为简单的一个代码分层。最终请求的数据会通过查询数据库来返回。

  其实这个过程和车站购票流程一样,每个窗口的处理能力是有限的,对应到服务器处理能力。由于这个原因,所以诞生了负载均衡的策略,核心思想就是:分。一台服务器不够,那就两台、三台、四台..... 直到并发的所有请求的响应时间都在可控范围之内。

  数据库的情况类似,一个数据库扛不住压力,就加到n个数据库分散压力。一个表扛不住压力,就把这个表拆分开,拆分成多个表,甚至拆分到多个不同服务器数据库,这就是我们常用的拆表策略。有的时候在同一个数据库中进行表拆分,性能的提升并非最大化,因为一台服务器的磁盘io是有上限的,就算拆成100个表,还是在同一个物理磁盘上,当然这样可缓解锁单表的情况。

  现在有很多的场景采用nosQL代替关系型数据库来缩短响应时间,在正常情况下,由于关系型数据库的本身因素在特定场景下的读写速度比nosQL要慢很多,所以系统设计初期,可以考虑采用关系型数据库和nosQL混用的方案。

  缓存

  当并发的请求到达一定程度,瓶颈大部分情况下发生在db层面,甚至db无论怎么优化总有上限。为了避免频繁查询数据库产生瓶颈,诞生了缓存。在访问数据库之前加入了缓存层,当然这里的缓存采用的方案在数据的响应时间上要比数据库小很多,比如常用的Redis、memcache,但是这些第三方的缓存组件还是要走网络,比起进程内的缓存还是要慢的多。

  现在一般流行的设计在网站层和服务层都有缓存策略,只不过缓存的数据和策略有所不同,但是最终目的都是为了加快请求的响应。当然加了缓存之后,数据的一致性需要仔细设计才可以,如果发生数据不一致的情况,程序员可能要背锅了。

  缓解数据库压力并不是引入缓存的唯一因素。

  cdn加速

  一些小厂可能用不到cdn,但是cdn带来的加速还是很客观的。cdn依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。cdn就是把离用户最近的数据返回给用户。

  三、写在最后

  程序异步化其实并不能缩短响应时间,但是对提高吞吐量有很大作用。以及,开头的那些电影我真的都看过了。

  

  香港服务器怎么选

  香港服务器几乎已经成为了外贸电商行业最常见的业务搭建平台之一了。为了确保租用的香港服务器比较好,需要通过硬件设备、网络稳定等多个因素来确定。那么需要租用香港服务器的话该怎么选到适合的香港服务器呢?

  1、选择独立的服务器

  香港服务器通常在选择上有两种选择,一种就是云服务器或者香港VPS,一种就是独立的服务器,第一种服务器是属于资源共享性质的,在使用时,服务器内的资源是与他人共享的。第二种则是自己独享服务器资源的。这两种类别的服务器在使用时,通常独立的服务器在性能上和[服务器租用和服务器托管有什么区别]稳定性上要更好一些。

  2、服务器的配置

  在配置上通常,我们常会[大量美国vps]看的配置有处理器、内存、带宽和硬盘。当您将您的业务大致介绍后,IDC运营商会根据您的实际需求来进行相应的配置上的建议。这些配置的好坏以及适合与否会直接关系到您后期业务运营上的稳定性的问题。

  3、数据中心服务的好坏

  租用服务器时需要了解服务器所托管的数据中心的服务质量的。数据中心的好坏会关系到网络延时的问题。通常一个比较好的香港服务器租用服务是需要确保数据中心电源和网络冗余的。网络延迟都是受数据中心位置和线路质量影响的。由于香港距离中国大陆比较近,所以大陆访问香港服务器的速度是可以超越其他海外服务器的。

  YINGSOO热线:400-630-3752

  热门文章:【香港服务器会被墙吗】【服务器杀毒】【云计算在2020年将会有哪些趋势】【韩国cn2服务器】【YINGSOO香港新世界机房环境怎么样】【给大家推荐永久免费的服务器】【云虚拟主机】【高清视频服务器】【国外便宜的云服务器】【云主机服务器哪家好】【免备案香港服务器的优势有哪些】【韩国虚拟主机好还是美国】【服务器海外】【香港独立ip云主机怎么样】【工信部】【手游修改ip】【香港云主机高防如何看】【DHCP是什么】【深圳服务器机房】【高速香港服务器速度快不快看四点

  香港的主机推介,就选YINGSOO,用了都说好

  9年香港的主机推介业务运营经验,连续3年香港的主机推介业务名列前茅.香港宽频,HKT机房核心合作伙伴,1200家企业客户共同选择,24小时在线服务

  https://www.yingsoo.com/products/cloud-hk.html

  虚拟主机香港—选知名品牌YINGSOO

  虚拟主机香港?9年香港云服务器租用业务运营经验,1200家企业客户共同选择;香港宽频,PCCW机房核心合作伙伴,连续3年香港云服务器租用,24小时在线服务.

  https://www.yingsoo.com/products/cloud-hk.html

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部