当前位置:网站首页>分布式系统:what、why、how
分布式系统:what、why、how
2022-07-04 03:50:00 【InfoQ】
1. 什么是分布式系统?
2. 为什么要引入分布式系统?
- 性能和容量:已经触达单机的计算瓶颈、存储容量瓶颈
- 投入产出比:升级单机硬件的成本太高,已经大于它带来的性能或容量的提升效果
- 研发效率:随着系统越来越复杂,参与维护的人越来越多,单体系统的维护效率触发瓶颈
- 运维要求:单机系统一挂全挂的特点,不满足互联网服务24*7可用的要求
- 扩展性:随着机器的线性增加,分布式系统的存储和计算性能也可以线性增加
- 灵活性:基于普通机器的集群,可以根据业务流量,灵活扩容或缩容,提高资金的利用率
- 可用性:单个模块挂掉,不会影响其他模块
3. 分布式系统又带来了哪些问题?
- 要妥善处理好多个节点之间的协同问题、数据分区、数据一致性等问题,难度很大
- 将系统拆到不同的计算机节点上,运维难度变高
- 测试和排查问题的难度提高
4. 如何建设优秀的分布式系统?
4.1 运行视角
- 分布式计算
- 两个节点之间的进程如何通信?
- 如何发现自己要调用的服务?
- 如何做避免系统雪崩?
- 如何确定系统是正常运行的?
- 如何做分布式锁?
- 分布式存储
- 如何做数据分片?
- 如何保障数据一致性?
- 如何做分布式事务?
4.2 抽象视角
- 路由问题
- 共识问题
- 运维问题

参考资料
- https://www.cnblogs.com/xybaby/p/7787034.html
- https://www.confluent.io/learn/distributed-systems/
- A Thorough Introduction to Distributed Systems
- https://time.geekbang.org/column/article/481016
- https://time.geekbang.org/column/article/141
边栏推荐
- Mindmanager2022 efficient and easy to use office mind map MindManager
- 02 ls 命令的具体实现
- Smart subway | cloud computing injects wisdom into urban subway transportation
- 三菱M70宏变量读取三菱M80公共变量采集三菱CNC变量读取采集三菱CNC远程刀补三菱机床在线刀补三菱数控在线测量
- 1289_FreeRTOS中vTaskSuspend()接口实现分析
- Storage of MySQL database
- EV6 helps the product matrix, and Kia is making efforts in the high-end market. The global sales target in 2022 is 3.15 million?
- 【webrtc】m98 ninja 构建和编译指令
- Redis cluster uses Lua script. Lua script can also be used for different slots
- Flink学习8:数据的一致性
猜你喜欢
Exercices de renforcement des déclarations SQL (MySQL 8.0 par exemple)
Evolution of MySQL database architecture
图解网络:什么是热备份路由器协议HSRP?
ctf-pikachu-CSRF
MySQL one master multiple slaves + linear replication
Mindmanager2022 efficient and easy to use office mind map MindManager
laravel admin里百度编辑器自定义路径和文件名
Illustrated network: what is the hot backup router protocol HSRP?
Rhcsa-- day one
【罗技】m720
随机推荐
STM32外接DHT11显示温湿度
思考的小记录
I Build a simple microservice project
Sales management system of lightweight enterprises based on PHP
[PaddleSeg 源码阅读] PaddleSeg计算 mIoU
SDP中的SPA
Support the first triggered go ticker
拼夕夕二面:说说布隆过滤器与布谷鸟过滤器?应用场景?我懵了。。
函数计算异步任务能力介绍 - 任务触发去重
Getting started with the go language is simple: go implements the Caesar password
渗透实战-SQLServer提权
Reduce function under functools
LevelDB源码解读-SkipList
还原窗口位置的微妙之处
Defensive programming skills
mysql数据库的存储
CesiumJS 2022^ 源码解读[0] - 文章目录与源码工程结构
[Yugong series] go teaching course 002 go language environment installation in July 2022
深入浅出对话系统——使用Transformer进行文本分类
【罗技】m720