新闻资讯  快讯  焦点  财经  政策  社会
互 联 网   电商  金融  数据  计算  技巧
生活百科  科技  职场  健康  法律  汽车
手机百科  知识  软件  修理  测评  微信
软件技术  应用  系统  图像  视频  经验
硬件技术  知识  技术  测评  选购  维修
网络技术  硬件  软件  设置  安全  技术
程序开发  语言  移动  数据  开源  百科
安全防护  资讯  黑客  木马  病毒  移动
站长技术  搜索  SEO  推广  媒体  移动
财经百科  股票  知识  理财  财务  金融
教育考试  育儿  小学  高考  考研  留学
您当前的位置:首页 > IT百科 > 站长技术 > 服务器

如何应对高并发

时间:2020-03-18 11:15:52  来源:  作者:

如何应对高并发

 

什么是高并发


高并发是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时处理很多请求。高并发相关的一些指标有响应时间、吞吐量、每秒查询率QPS、并发用户数等。

  • 响应时间: 系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms,这个200ms就是系统的响应时间。
  • 吞吐量: 单位时间内(年月日时分秒)处理的请求数量。
  • QPS: 每秒响应请求数。
  • 并发用户数: 同时承载正常使用系统功能的用户数量。例如一个即时通讯系统,同时在线量一定程度上代表了系统的并发用户数。

如何提升系统的并发能力


互联网分布式架构设计,提高系统并发能力的方式,方法论上主要有两种:垂直扩展(Scale Up),水平扩展(Scale Out)

垂直扩展

提升单机处理能力。垂直扩展的方式又分为两种:

  • 增强单机硬件性能。例如:增加CPU核数如32核,升级更好的网卡如万兆,升级更好的硬盘如SSD,扩充硬盘容量如2T,扩充系统内存如128G;
  • 提升单机架构性能。例如:使用Cache来减少IO次数,使用异步来增加单服务吞吐量,使用无锁数据结构来减少响应时间;

水平扩展

只要增加服务器数量,就能线性扩充系统性能。水平扩展对系统架构设计是有要求的。

典型的互联网封层架构

如何应对高并发

 

  • 客户端层: 典型调用方是浏览器或手机App
  • 反向代理层: 系统入口(Ingress)、反向代理(Nginx
  • 站点应用层: 实现核心应用逻辑,返回HTML、JSON
  • 服务层: 微服务体现在这一层
  • 数据缓存层: 缓存加速访问缓存
  • 数据库层: 数据库持久化数据存储

水平扩展分层架构


反向代理层的水平扩展

如何应对高并发

 

反向代理层的水平扩展,是通过DNS轮询实现的:DNS Server对于一个域名配置了多个解析IP,每次DNS解析请求来访问DNS Server,会轮询这些IP。

当Nginx成为瓶颈的时候,只要添加服务器的数量,新增Nginx服务器的部署,增加一个外网IP,就能扩展反向代理层的性能,做到理论上的无限高并发。

站点应用层的水平扩展

如何应对高并发

 

站点层的水平扩展,是通过Nginx实现的。通过修改nginx.conf,可以设置多个Web后端。

当Web后端成为瓶颈时,只要增加服务器的数量,新增Web服务器的部署,在Nginx配置中配置上新的web后端,就能扩展站点层的性能,做到理论上的无限高并发。

服务层的水平扩展

如何应对高并发

 


如何应对高并发

 

数据层的水平扩展

在数据量很大的情况下,数据层(缓存,数据库)涉及数据的水平扩展,将原本存储于一台服务器的上的数据水平拆分到不同服务器上,已达到扩充系统性能的目的。

按照范围水平拆分

如何应对高并发

 


如何应对高并发

 

按照哈希水平拆分

如何应对高并发

 


如何应对高并发

 

水平拆分与主从同步

这里需要注意的是,通过水平拆分来扩充系统性能,与主从同步读写分离来扩充数据库性能的方式有本质的不同

如何应对高并发

 

注意: 缓存层的水平拆分和数据库层的水平拆分类似,也是以范围拆分和哈希拆分的方式居多



Tags:高并发   点击:()  评论:()
声明:本站部分内容来自互联网,内容观点仅代表作者本人,如有任何版权侵犯请与我们联系,我们将立即删除。
▌相关评论
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
▌相关推荐
什么是高并发高并发是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时处理很多请求。高并发相关的一些指标有响应时间、吞吐量、每秒查...【详细内容】
2020-03-18   高并发  点击:(0)  评论:(0)  加入收藏
高并发经常会发生在有大活跃用户量,用户高聚集的业务场景中,如:秒杀活动,定时领取红包等。 为了让业务可以流畅的运行并且给用户一个好的交互体验,我们需要根据业务场景预估达到...【详细内容】
2020-03-15   高并发  点击:(6)  评论:(0)  加入收藏
处理高并发无非就是四大的方法 分流、缓存、降级、限流1、分流实现方式最简单的是增加多台机器,目的是为了扩容基本思路是 tomcat(万以下,tomcat顶峰700并发)=》nginx(3-4万并发)=...【详细内容】
2020-03-12   高并发  点击:(3)  评论:(0)  加入收藏
每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:抢火车票!虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节...【详细内容】
2020-01-29   高并发  点击:(0)  评论:(0)  加入收藏
需求起因 在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节。所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库。这个...【详细内容】
2020-01-08   高并发  点击:(51)  评论:(0)  加入收藏
在开发分布式高并发系统时有三把利器用来保护系统:缓存、降级、限流缓存缓存的目的是提升系统访问速度和增大系统处理容量降级降级是当服务出现问题或者影响到核心流程时,需要...【详细内容】
2020-01-02   高并发  点击:(15)  评论:(0)  加入收藏
在软件架构设计过程中,解决软件高并发问题,软件可用性,及软件伸缩性等,最好的解决方案就是服务器进行集群,然后负载均衡转发了。那么负载均衡有哪几种方案可供选择,各自的又有什么...【详细内容】
2019-12-27   高并发  点击:(43)  评论:(0)  加入收藏
概述创建多个并发线程、模拟多个访问者同时对某一URL进行访问,可对任何基于url的资源进行并发性能测试.压力测试是性能调优过程中必不可少的一环。只有让服务器处在高压情况...【详细内容】
2019-12-24   高并发  点击:(0)  评论:(0)  加入收藏
最近一个圈内朋友通过私信告诉我,通过使用Netty4 + Thrift压缩二进制编解码技术,他们实现了10W TPS(1K的复杂POJO对象)的跨节点远程服务调用。相比于传统基于Java序列化+BIO(同步阻塞IO)的通信框架,性能提升了8倍多。...【详细内容】
2019-12-16   高并发  点击:(20)  评论:(0)  加入收藏
Nginx现在是非常火爆的web服务器,她使用更少的资源,支持更多的并发连接数,实现了linux的epoll模型。Nginx采用的是多进程单线程和多路IO复用模型。使用了I/O多路复用技术的Ng...【详细内容】
2019-11-26   高并发  点击:(95)  评论:(0)  加入收藏
前言在实际项目中,曾经遭遇过线上5W+QPS的峰值,也在压测状态下经历过10W+QPS的大流量请求,本篇的话题主要就是自己对高并发流量控制的一点思考。应对大流量的一些思路首先,我们...【详细内容】
2019-11-21   高并发  点击:(21)  评论:(0)  加入收藏
一、传统并发模型的缺点基于线程的并发 特点: 每任务一线程 直线式的编程 使用资源昂高, context切换代价高,竞争锁昂贵 太多线程可能导致吞吐量下降,响应时间暴涨。基于事件的...【详细内容】
2019-11-20   高并发  点击:(20)  评论:(0)  加入收藏
一、QPS,每秒查询QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。互联网中...【详细内容】
2019-11-20   高并发  点击:(24)  评论:(0)  加入收藏
有很多“奇技淫巧”的高并发,但基础知识的掌握程度决定了我们所写代码的并发程度,对基础足够了解才能写出并发性能更高的程序,所以本文先总结一些基础,然后再看一些具体例子。这个总结不是从头开始的详细介绍,另外影响并发...【详细内容】
2019-11-11   高并发  点击:(26)  评论:(0)  加入收藏
写在前面最近在进行服务器的优化,正好在看nginx相关的知识,所以把一些知识整理一下。参考资料为《Nginx高性能web服务器详解》,建议大家都去读读这本书。我的机器为四核CPU,16G...【详细内容】
2019-10-30   高并发  点击:(34)  评论:(0)  加入收藏
网站访问数据的特点大多数呈现为“二八定律”:80%的业务访问集中在20%的数据上。例如:在某一段时间内百度的搜索热词可能集中在少部分的热门词汇上;新浪微博某一时期也可能大家广泛关注的主题也是少部分事件。...【详细内容】
2019-10-29   高并发  点击:(86)  评论:(0)  加入收藏
一、大型网站系统的特点高并发,大流量: 需要面对高并发用户,大流量访问,Google日均PV数为35亿,日均IP访问数为3亿,2011年腾讯QQ最大用户在线数1.4亿,淘宝2012年双11活动一天交易额...【详细内容】
2019-10-22   高并发  点击:(8)  评论:(0)  加入收藏
Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景本文介绍阿里开源限流熔断方案Sentinel功能、原理、架构、快速入门以及相关框架比较基本介绍1 名词解释 服务...【详细内容】
2019-10-15   高并发  点击:(183)  评论:(0)  加入收藏
php 高并发解决思路解决方案,如何应对网站大流量高并发情况。本文为大家总结了常用的处理方式,但不是细节,后续一系列细节教程给出。希望大家喜欢。一 高并发的概念在互联网时...【详细内容】
2019-10-08   高并发  点击:(33)  评论:(0)  加入收藏
什么是高并发?高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关的常见指标有哪些? ...【详细内容】
2019-10-08   高并发  点击:(24)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条