一、概述
1. 什么是高并发?
高并发(High Concurrency)架构是一种旨在支持大量并发用户的软件系统设计方式,其目标是在高负载下仍能保持系统的性能和响应能力。
高并发常用的指标有:响应时间(Response Time)、吞吐量(Throughput)、每秒查询率QPS(Query Per Second)和并发用户数。
Web网站也常用PV(Page View,页面访问次数)作为统计指标。
如一个Web网站为100W PV,那么每台服务器每秒处理的请求数为:
100 0000 / (24 * 60 * 60) / 服务器台数。
2. 如何来提高并发的能力?
可通过:垂直扩展(Scale Up)或 水平扩展(Scale Out)。
(1)垂直扩展:增强硬件或增加Cache。
(2)水平扩展:增加服务器数量。
3. 架构设计有哪些原则?
系统中的每个组件都应做到没有单点故障。
系统应该快速开发小功能模块,尽快上线进行验证,早日发现问题大大降低系统交付的风险。
服务接口应该做成无状态的,当前接口的访问不依赖于接口上次访问的状态。
在设计阶段就要考虑监控的手段。
二、典型的高并发架构
1. 基础架构:负载均衡 + 数据缓存
数据库缓存Memache、Redis。
2. 数据库扩展
(1)读写分离:数据库主从。
(2)分库分表:按照业务功能进行数据库的拆分。
3. 数据库读写分离
分库分表
4. Web应用扩展
业务拆分(微服务):将不同功能进行拆分并部署在不同的服务器上,如商品模块、订单模块等。
5. 多机房部署
通过DNS轮询实现机房间的负载均衡。
原文始发于微信公众号(码农与软件时代):高并发架构
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/175942.html