网站首页 > 博客文章 正文
在实际工作中,经常听到分布式、高并发、多线程,一开始接触的时候,很容易将三者混淆。今天分享一下我对这三者的理解。
分布式
分布式与集中式相对应,集中式更多的出现在传统服务架构中,即整个项目就是一个应用。
而分布式更多的出现在微服务架构中,是一种为了解决单个物理服务器容量和性能瓶颈问题而采用的优化手段。
分布式需要解决的问题极多,在不同的技术层面上,又包括:分布式文件系统、分布式缓存、分布式数据库、分布式计算等。
从理念上讲,分布式的实现有两种形式。
- 水平扩展;
- 垂直拆分。
高并发
高并发通常是指系统同时并行处理很多请求。
与并发相关的还有一个容易混淆的概念,就是并行。
并行,是指多个CPU实例或者多台机器同时执行一段处理逻辑,是真正的同时。
并发,通过CPU调度算法,让用户看上去同时执行,实际上从CPU操作层面不是真正的同时。而并发可以通过一些指标进行定量的分析,如并发数、吞吐量、QPS。
相对于分布式来讲,高并发在解决的问题上会集中一些,其反应的是同时有多少量:比如在线直播服务,同时有上万人观看。
高并发可以通过分布式技术去解决,将并发流量分到不同的物理服务器上。提升系统的并发能力也有两种方式:
- 垂直扩展,提升单机处理能力。提升单机处理能力可通过增强单机硬件性能或提升单机架构性能,如扩充系统内存等。
- 水平扩展,增加服务器数量,扩充系统性能。
多线程
多线程是指从软件或者硬件上实现多个线程并发执行的技术,它更多的是解决CPU调度多个进程的问题。
总结
分布式是从物理资源的角度去将不同的机器组成一个整体对外服务,技术范围非常广且难度非常大,有了这个基础,高并发、高吞吐等系统很容易构建。
高并发是从业务角度去描述系统的能力,实现高并发的手段可以采用分布式,也可以采用诸如缓存、CDN等,当然也包括多线程。
多线程则聚焦于如何使用编程语言将CPU调度能力最大化。
- 上一篇: 你分得清分布式、高并发与多线程吗?
- 下一篇: 如何理解:程序、进程、线程、并发、并行、高并发?
猜你喜欢
- 2024-10-07 JS和C#/JAVA的多线程,究竟有什么不一样?
- 2024-10-07 什么是多线程?看我多线程七十二变,你能记住吗?
- 2024-10-07 【多线程与高并发】- 浅谈volatile
- 2024-10-07 精通高并发与多线程,却不会用ThreadLocal?
- 2024-10-07 【程序员课堂】多线程、进程和线程的区别
- 2024-10-07 了解架构设计远远不够!一文拆解 Tomcat 高并发原理与性能调优
- 2024-10-07 爬虫入门必学:多线程与多进程的区别
- 2024-10-07 【开发者成长】深入理解多线程编程
- 2024-10-07 python中多线程与多进程的区别(python多进程和多线程协程)
- 2024-10-07 搞懂分布式与高并发,看这篇就够了
你 发表评论:
欢迎- 07-08Google Cloud Platform 加入支持 Docker 的容器引擎
- 07-08日本KDDI与Google Cloud 签署合作备忘录,共探AI未来
- 07-08美国Infoblox与Google Cloud合作推出云原生网络和安全解决方案
- 07-08GoogleCloud为Spanner数据库引入HDD层,将冷存储成本降低80%
- 07-08谷歌推出Cloud Dataproc,缩短集群启动时间
- 07-08Infovista与Google Cloud携手推进射频网络规划革新
- 07-08比利时Odoo与Google Cloud建立增强合作,扩大全球影响力
- 07-08BT 和 Google Cloud 通过 Global Fabric 加速 AI 网络
- 最近发表
-
- Google Cloud Platform 加入支持 Docker 的容器引擎
- 日本KDDI与Google Cloud 签署合作备忘录,共探AI未来
- 美国Infoblox与Google Cloud合作推出云原生网络和安全解决方案
- GoogleCloud为Spanner数据库引入HDD层,将冷存储成本降低80%
- 谷歌推出Cloud Dataproc,缩短集群启动时间
- Infovista与Google Cloud携手推进射频网络规划革新
- 比利时Odoo与Google Cloud建立增强合作,扩大全球影响力
- BT 和 Google Cloud 通过 Global Fabric 加速 AI 网络
- NCSA和Google Cloud合作开发AI驱动的网络防御系统,加强泰国网络空间的安全性
- SAP将在沙特阿拉伯 Google Cloud 上推出BTP服务
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- googlecloud (64)
- messagesource (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)