- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
专业资料
专业资料
黑马程序员:高并发解决案
—、什么是咼并发
高并发(High Concurrency )是互联网分布式系统架构设计中必须考虑的因素 之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。高并发相关 常用的一些指标有响应时间(Response Time),吞吐量(Throughput),每秒 查询率QPS(Query Per Second ),并发用户数等。
响应时间:系统对请求做出响应的时间。例如系统处理一个HTTP请求需要200ms 这个200ms就是系统的响应时间。
吞吐量:单位时间处理的请求数量。
QPS每秒响应请求数。在互联网领域,这个指标和吞吐量区分的没有这么明显。
并发用户数:同时承载正常使用系统功能的用户数量。例如一个即时通讯系统, 同时在线量一定程度上代表了系统的并发用户数。
二、什么是秒杀
秒杀场景一般会在电商举行一些活动或者节假日在 12306上抢票时遇到。对于
电商中一些稀缺或者特价商品,电商一般会在约定时间点对其进行限量销售, 因
为这些商品的特殊性,会吸引大量用户前来抢购,并且会在约定的时间点同时在 秒杀页面进行抢购。
此种场景就是非常有特点的高并发场景,如果不对流量进行合理管控,肆意放 任大流量冲击系统,那么将导致一系列的问题出现,比如一些可用的连接资源被 耗尽、分布式缓存的容量被撑爆、数据库吞吐量降低,最终必然会导致系统产生 雪崩效应。
一般来说,大型互联通常采用的做法是通过扩容、动静分离、缓存、服务降级 及限流五种常规手段来保护系统的稳定运行。
三、扩容
由于单台服务器的处理能力有限,因此当一台服务器的处理能力接近或已超出
其容量上限时,采用集群技术对服务器进行扩容,可以很好地提升系统整体的并
行处理能力,在集群环境中,节点的数量越多,系统的并行能力和容错性就越强。
在无状态服务下,扩容可能是迄今为止效果最明显的增加并发量的技巧之一。
从扩容式角度讲,分为垂直扩容(scale up)和水平扩容(scale out )。垂直 扩容就是增加单机处理能力,怼硬件,但硬件能力毕竟还是有限;水平扩容说白 了就是增加机器数量,怼机器,但随着机器数量的增加,单应用并发能力并不一 定与其呈现线性关系, 此时就可能需要进行应用服务化拆分了。
从数据角度讲,扩容可以分为无状态扩容和有状态扩容。无状态扩容一般就是 指我们的应用服务器扩容;有状态扩容一般是指数据存储扩容,要么将一份数据 拆分成不同的多份,即sharding,要么就整体复制n份,即副本。sharding遇到的问题就是分片的可靠性,一般做转移、rehash、分片副本;副本遇到的问题 是一致性性,一般做一致性算法,如 paxos, raft等。
四、动静分离
动静分离,静态资源请求与动态请求分离,项目中需要访问的图片、声音、js/css 等静态资源需要有独立的存放位置,便于将来实现静态请求分离时直接剥离出 来,比如nginx可以直接配置图片文件直接访问目录,而不需要经过 tomcat。 这样tomcat就可以专注处理动态请求,操作数据库数据处理之类的。静态请求 代理服务器性能比tomcat高很多。
动静分离是指,静态页面与动态页面分开不同系统访问的架构设计法。
(browser j
stating, com
stating, com
CDfJ nginx squid varnish
sivice cache
sivice cache
般来说:
静态页面访问路径短,访问速度快,几毫秒 动态页面访问路径长,访问速度相对较慢(数据库的访问,网络传输,业务逻辑
计算),几十毫秒甚至几百毫秒,对架构扩展性的要求更高
静态页面与动态页面以不同域名区分
系统需要将动态数据 和静态数据分而治之,用户对静态数据的访问,应该避免 请求直接落到企业的数据中心,而是应该在CDN中获取,以加速系统的响应速度
电怡节点电怡西北节备份建据中心华北期通客户 华Jt电値客R ■华北囲邇恭点?西北客户***
电怡节点
电怡
西北节
备份建据中心
华北期通客户 华Jt电値客R ■
华北囲邇恭点?
西北客户***
东把电愴窖卢 东北网通客户
西南节点
华东蛊户
华中雷户(y华南呑户
f .密.#Z辛 ;SI据中
西网容户
五、缓存
缓存之所以能够提高处理速度,是因为不同设备的访问速度存在差异。 缓存的话 题可以扯几本书不带重样的。从CPU可以一直扯到客户端缓存,即从最底层一直 到扯到最特近用户的一层,每一层都可能或可以有缓存的存在。 我们这里不扯这 么多,只说简单服务端缓存。现在从几个不同角度来看一下缓存:
从效果角度。命中率越高越好吗? 10万个店铺数据,缓存了 1000个,命中率 稳定100%那是不是说,有99000个店铺都是长尾店铺?缓存效果评估不能单 看命中率
您可能关注的文档
最近下载
- 劳动教育自制贺卡.pptx
- ENTERFACE2010ProjectProposal.doc VIP
- 居家养老服务承诺书-居家承诺书.docx VIP
- DB3205_T1078-2023_人才公寓运营管理与服务规范_苏州市 .docx VIP
- ProjectProposal项目建议书英文模板.docx VIP
- 新媒体写作与运营PPT完整全套教学课件.pptx VIP
- ProjectProposal项目建议书英文模板.pdf VIP
- 城镇燃气工程分部、分项工程划分[1].docx VIP
- 网络教学效果调查与数据分析.docx VIP
- 工程量清单及招标控制价编制服务采购服务质量承诺及保障措施.docx VIP
原创力文档


文档评论(0)