论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
程序人生
›
15个高并发系统计划锦囊,创建并发思维! ...
15个高并发系统计划锦囊,创建并发思维!
宁睿
金牌会员
|
2024-12-15 21:37:07
|
显示全部楼层
|
阅读模式
楼主
主题
812
|
帖子
812
|
积分
2446
前言
大家好,记得很久之前,去面试过
字节跳动
。被三面的面试官问了一道场景计划标题:
怎样计划一个高并发系统
。当时我回答得比较粗糙,最近追念起来,所以整理了计划高并发系统的15个锦囊,相信大家看完会有资助的。
怎样理解高并发系统
所谓计划
高并发
系统,就是计划一个系统,保证它
团体可用
的同时,能够
处理很高的并发用户哀求
,能够承受
很大的流量打击
。
我们要计划高并发的系统,那就需要处理好一些常见的系统瓶颈问题,如
内存不足、磁盘空间不足,连接数不够,网络宽带不够
等等,以应对突发的流量洪峰。
1. 分而治之,横向扩展
如果你
只部署一个应用,只部署一台服务器
,那抗住的流量哀求是非常有限的。并且,单体的应用,有单点的风险,如果它挂了,那服务就不可用了。
因此,计划一个高并发系统,我们可以
分而治之,横向扩展
。也就是说,采用分布式部署的方式,部署多台服务器,把流量分流开,让每个服务器都负担一部分的并发和流量,提升
团体系统的并发本领
。
2. 微服务拆分(系统拆分)
要提高系统的吞吐,提高系统的处理并发哀求的本领。除了采用
分布式部署的方式
外,还可以做
微服务拆分
,这样就可以达到分摊哀求流量的目的,提高了并发本领。
所谓的
微服务拆分
,其实就是把一个单体的应用,按功能单一性,拆分为多个服务模块。
好比一个电商系统,拆分为用户系统、订单系统、商品系统等等
。
3. 分库分表
当业务量暴增的话,MySQL单机
磁盘容量会撑爆
。并且,我们知道数据库连接数是有限的。
在高并发的场景下
,大量哀求访问数据库,MySQL单机是扛不住的!高并发场景下,会出现too many connections报错。
所以高并发的系统,
需要考虑拆分为多个数据库,来抗住高并发的毒打
。而假如你的单表数据量非常大,存储和查询的性能就会碰到瓶颈了,如果你做了很多优化之后还是无法提升服从的时候,就需要考虑做
分表
了。一样平常千万级别数据量,就需要
分表
,每个表的数据量少一点,提升SQL查询性能。
劈面试官问要求你计划一个高并发系统的时候,一样平常都要说到
分库分表
这个点。
之前写了分库分表15连问,为了应对面试官追问到底,大家可以趁便复习一下分库分表的相干经典面试题哈,可以看我这篇文章:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
宁睿
金牌会员
这个人很懒什么都没写!
楼主热帖
java前置学习
简单的用Python对手机号进行加密 ...
k8s v-1.20版本部署详细过程[实测可用 ...
【PostgreSQL】PostgreSQL重建与主库不 ...
net core 3.1使用identityServer登录时 ...
Unity 将是驱动 C# 增长的引擎吗 ? ...
基于单片机的压力测控仿真设计(#0024) ...
开源共建 | 中国移动冯江涛:ChunJun( ...
【RocketMQ】消息的存储
离线数仓建设,企业大数据的业务驱动与 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表