01 分布式系统架构的冰与火

深入Luckfox Pico的Web界面:从Angular前端到CGI后端的RV1106 IPCWeb全栈解析 本文深入解析了基于瑞芯微RV1106芯片的Luckfox Pico设备上,IPCWeb全栈解决方案的架构与部署。详细介绍了如何通过SDK编译配置,将现代Angular前端框架与高效的C++ CGI后端结合,并利用nginx和FastCGI在嵌入式环境中构建稳定、高性能的Web管理界面,为物联网设备开发提供了完整的实战参考。 阅读详情

分布式系统 - 学习/实践_的博客-优快云博客

1.学习/操作

1.应用场景

首先,我们需要阐述一下为什么需要分布式系统,而不是传统的单体架构。使用分布式系统主要有两方面原因

增大系统容量。我们的业务量越来越大,而要能应对越来越大的业务量,一台机器的性能已经无法满足了,我们需要多台机器才能应对大规模的应用场景。所以,我们需要垂直或是水平拆分业务系统,让其变成一个分布式的架构。

加强系统可用。我们的业务越来越关键,需要提高整个系统架构的可用性,这就意味着架构中不能存在单点故障。这样,整个系统不会因为一台机器出故障而导致整体不可用。所以,需要通过分布式架构来冗余系统以消除单点故障,从而提高系统的可用性

当然,分布式系统还有一些优势,比如:

因为模块化,所以系统模块重用度更高;

因为软件服务模块被拆分,开发和发布速度可以并行而变得更快;

系统扩展性更高;团队协作流程也会得到改善;

……

不过,这个世界上不存在完美的技术方案,采用任何技术方案都是“按下葫芦浮起瓢”,都是有得有失,都是一种 trade-off。也就是说,分布式系统在解决上述问题的同时,也给我们带来了其他的问题。因此,我们需要清楚地知道分布式系统所带来的问题。

2. 单体应用和分布式架构的优缺点

从上面的表格我们可以看到,分布式系统虽然有一些优势,但也存在一些问题。

– 架构设计变得复杂(尤其是其中的分布式事务)。

– 部署单个服务会比较快,但是如果一次部署需要多个服务,流程会变得复杂。

– 系统的吞吐量会变大,但是响应时间会变长。运维复杂度会因为服务变多而变得很复杂。

– 架构复杂导致学习曲线变大。

– 测试和查错的复杂度增大。

– 技术多元化,这会带来维护和运维的复杂度。

– 管理分布式系统中的服务和调度变得困难和复杂。

也就是说, 分布式系统架构的难点在于系统设计,以及管理和运维。所以,分布式架构解决了“单点”和“性能容量”的问题,但却新增了一堆问题。而对于这些新增的问题,还会衍生出更多的子问题,这就需要我们不断地用各式各样的技术和手段来解决这些问题。这就出现了我前面所说的那些架构方式,以及各种相关的管理型的技术方法。这个世界就是这样变得复杂起来的。

这些架构方式和管理型的技术方法有:

各式各样的架构,如高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等。还有和这些架构相关的管理型的技术方法,如 DevOps、应用监控、自动化运维、SOA 服务治理、去 IOE 等。

但是,其实,只要我们能够找到分布式这张网的“纲”,我们就能比较方便和自如地打开整张网了.

3. 分布式系统的发展

从 20 世纪 70 年代的模块化编程,80 年代的面向事件设计,90 年代的基于接口 / 构件设计,这个世界很自然地演化出了 SOA——基于服务的架构。

SOA 架构是构造分布式计算应用程序的方法。它将应用程序功能作为服务发送给最终用户或者其他服务。它采用开放标准与软件资源进行交互,并采用标准的表示方式。

开发、维护和使用 SOA 要遵循以下几条基本原则。

– 可重用,粒度合适,模块化,可组合,构件化以及有互操作性。

– 符合开放标准(通用的或行业的)。

– 服务的识别和分类,提供和发布,监控和跟踪。

打卡01

21 | 分布式系统架构的冰与火

1. 为什么需要分布式系统, 而不是传统的单体架构

主要两个原因:

增大系统容量;

加强系统可用。

还有其他的优势好处.

模块化, 系统模块重用度更高;

软件服务模块被拆分,开发和发布速度可以并行而变得更快;

系统扩展性更高;

团队协作流程也会得到改善;

2. 分布式系统的发展历程

单体架构[软件模块高度耦合]–>SOA 架构[比较松耦合]–>微服务架构[架构更为松耦合] [是以后的选择]

3. 编排和组织引擎方式

通过工作流引擎,也可以是网关. 当然,还需要辅助于像容器化调度这样的技术方式,如 Kubernetes.

22 | 从亚马逊的实践,谈分布式系统的难点

1. 从目前已经公开的资料来看,分布式服务化架构思想实践最早的公司应该是亚马逊。
2. 亚马逊如何做分布式服务架构的,遇到了哪些问题,以及是如何解决的

亚马逊 CEO 杰夫·贝索斯(Jeff Bezos)就向全公司颁布了下面的这几条架构规定.

– 所有团队的程序模块都要通过 Service Interface 方式将其数据与功能开放出来。

– 团队间程序模块的信息通信,都要通过这些接口。除此之外没有其它的通信方式。其他形式一概不允许:不能直接链结别的程序(把—其他团队的程序当做动态链接库来链接),不能直接读取其他团队的数据库,不能使用共享内存模式,不能使用别人模块的后门,等等。唯一允许的通信方式是调用 Service Interface。

– 任何技术都可以使用。比如:HTTP、CORBA、Pub/Sub、自定义的网络协议等。

– 所有的 Service Interface,毫无例外,都必须从骨子里到表面上设计成能对外界开放的。也就是说,团队必须做好规划与设计,以便未来把接口开放给全世界的程序员,没有任何例外。

– 不这样做的人会被炒鱿鱼。

备注

这也应是AWS(Amazon Web Service)出现的基因.

出现的问题

– 一个线上故障的工单会在不同的服务和不同的团队中转过来转过去。

– 每个团队都可能成为一个潜在的 DDoS 攻击者,除非每个服务都要做好配额和限流。

– 监控和查错变得更为复杂。除非有非常强大的监控手段。

– 服务发现和服务治理也变得非常复杂。

解决方法

–分布式服务的架构需要分布式的团队架构

–分布式服务查错不容易

–没有专职的测试人员,也没有专职的运维人员,开发人员做所有的事情。

–运维优先,崇尚简化和自动化

–内部服务和外部服务一致。

备注

在进化的过程中,亚马逊遇到的问题很多,甚至还有很多几乎没有人会想到的非常生僻的东西,它都一一学习和总结了,而且都解决得很好.

3.分布式系统中需要注意的问题

问题一:异构系统的不标准问题

问题二:系统架构中的服务依赖性问题

问题三:故障发生的概率更大

问题四:多层架构的运维复杂度更大

重点

分工不是问题,问题是分工后的协作是否统一和规范。

而且构建分布式服务需要从组织,到软件工程,再到技术上的一次大的改造,需要比较长的时间来磨合和改进,并不断地总结教训和成功经验。

2.补充

TBD

3.问题

1. 把一个单体应用拆解成服务化或是微服务中遇到的问题和难点是什么?踩过什么样的坑?你是如何应对的?

网友评论

javaee

微服务通常根据业务来划分边界,粒度通常是一个独立的业务,具体多大合适不是一开始就决定的,这是一个逐步拆分细化的过程,李智慧老师说任何复杂的架构都是从最简单的应用慢慢演化过来的,就像当年的淘宝发展到现在。单体应用,为了高可用,需要集群多实例部署。查询太慢,访问太慢,加缓存,DB读写分离。业务发展到一定复杂程度,单体应用太庞大,会产生一系列问题。例如开发方面,一个工程几十上百人不停的改动,如何协作,一个人的代码有问题,影响了所有业务。每一个版本的迭代与发布,开发、测试、沟通得花大把时间,可能还会出错,牵一发而可能动全身。运维上,发布一次可以睡个午觉,发布一次影响线上所有功能。资源方面,扩容到几十上百台机器的时候,DB、NoSQL等的连接数撑爆了……//怎么理解 TBD

扩展问题
Q: 分布式与集群的区别

A: TBD

插入:

分布式是指将不同功能,或不同地点,或拥有不同数据的多台计算机通过网络连接起来,由控制系统统一管理,完成大规模信息处理的计算机系统。

集群是指将多台服务器集中在一起提供同一种服务,在逻辑上可以看做是一台服务器对外进行服务,这些服务器组合就是集群。

分布式和集群的区别是什么?

简单总结一句话:分布式是“并联”工作的,集群是“串联”工作的。

具体介绍一下两者的区别:

1、从概念上就可以看出两者最主要的区别就是分布式是将一种业务拆分成多个子业务部署在多台服务器上,进而对外提供服务;而集群就是将多台服务器组合在一起提供同一种服务;

2、集群强调在多台服务器位置集中,并且容易统一管理;而分布式没有具体要求,不论放置在哪个位置,只要通过网络连接起来就行;

3、集群是一种物理形态,即多台服务器在一起提供一种服务;而分布式是一种工作方式,即一个程序或业务分解到多台服务器分别完成;

总之,两者最明显的区别还是集群是多台服务器做相同类型的任务,分布式是多台服务器协同做一种任务。

2. 什么是单体架构

文章正在审核中… - 简书 // 单体架构,SOA架构,微服务架构,分布式架构,集群架构 – 已经打不开

后续补充

…

4.参考

21 | 分布式系统架构的冰与火-极客时间 // 21 | 分布式系统架构的冰与火

分布式与集群的区别是什么? // 分布式与集群的区别

文章正在审核中… - 简书 // 单体架构,SOA架构,微服务架构,分布式架构,集群架构

后续补充

…

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况 主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。 立即下载

相关推荐

VSAN闪存缓存磁盘故障处理指南-RAID0模式实战解析

本文详细解析了VSAN集群中RAID0模式下的闪存缓存磁盘故障处理全流程。通过模拟真实故障场景,从告警识别、数据重建策略到磁盘组重构,提供了手把手的实战操作指南,并深入探讨了RAID0缓存故障的独特影响与风险,为运维人员应对此类高性能存储架构的突发问题提供了专业解决方案。

assembly8low的博客 445

【分布式系统】分布式系统架构的冰与火

为什么需要分布式系统

芝兰生于深谷,不以无人而不芳 844

从零开始用STM32驱动RGB屏:配置PCLK、DE同步信号的避坑指南

本文详细介绍了如何使用STM32驱动RGB接口LCD屏幕,重点解析了PCLK配置、同步信号极性和DE使能等关键参数的设置方法。通过实战代码示例和常见问题排查指南,帮助开发者避免常见配置错误,实现稳定的显示效果。特别针对800x480 IPS屏提供了优化建议和调试技巧。

sky77的博客 540

12.16 Day 1 - 分布式系统架构的冰与火

Day 1

纽雪澳诺加海美德的博客 539

TI MSPM0G3507 循迹小车强制寻黑线代码一

一个基于MSPM0微控制器的循迹小车控制系统。系统通过8路循迹传感器检测黑线位置偏差,使用PID算法计算电机控制量。主程序初始化中断、PWM等外设,在按键触发后进入循迹模式。传感器数据处理函数根据检测到的黑线位置返回偏差值(-7到7),PID控制器根据偏差调整左右电机速度。系统还包含限幅处理、中断服务等模块,实现稳定的自动循迹功能。代码结构清晰,展示了嵌入式系统中传感器数据处理、电机控制和PID算法的典型实现方式。

雾削木的优快云博客 1855

保姆级图解:HKMG工艺中的‘覆盖层’(Cap Layer)到底怎么调阈值电压?

本文深入解析了HKMG工艺中覆盖层(Cap Layer)如何精准调控阈值电压的关键技术。通过原子级精度的ALD工艺和材料选择,覆盖层在半导体制造中扮演着隐形调节器的角色,直接影响晶体管的电气特性。文章详细介绍了La2O3和Al2O3等材料的特性对比、ALD工艺的原子级控制,以及实战调试中的关键步骤和问题排查方法。

weixin_27032989的博客 496

分布式系统架构的冰与火

分布式系统架构的冰与火 01 | 导读 1、各式各样的架构 1)高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等。 2、管理型的技术方法 1)DevOps、应用监控、自动化运维、SOA服务治理、去IOE等。 3、使用分布式系统的两个原因 1)增大系统容量:垂直或水平拆分业务系统,让其变成一个分布式的架构。 2)加强系统可用:通过分布式架构来冗余系统以消除单点故障,提高系统的可用性。 02 | 单体应用和分布式架构 1、优缺点对比 2、分布式系统架构的难点在于系统设计,

z_z_z_666666的博客 483

半导体设备上位机开发:我的经验与新人指导

半导体设备上位机开发是一项复杂而富有挑战性的工作,需要扎实的技术基础和丰富的经验。如果你对半导体设备上位机开发感兴趣,欢迎随时与我交流,我会尽力帮助你!

qq_43518667的博客 2729

分布式系统架构的本质

一、分布式系统的冰与火二、分布式系统的发展三、Amazon的分布式服务架构实践四、分布式系统中需要注意的问题       4.1、异构系统的不标准的问题       4.2、系统架构中的服务依赖性问题       4.3、故障发生的概率更大       4.4、多层架构的运维复杂度更大五、分布式系统的架构需要解决的技术问题六、软件工程的本质七、分布式系统的关键技术       7.1、全栈系统监控...

八荒六合唯我独尊 722

ICML-2025《Learning from Sample Stability for Deep Clustering》

用于指导深度聚类模型的训练,从而提升模型对困难样本的学习能力,最终改善整体聚类性能。首先,利用K-means在原始样本(非增强)的表征上进行聚类,得到初始聚类分配。其目的是鼓励模型对同一稳定样本在连续epoch中产生相近的表征。输出差异大)会产生更大的损失值,从而引导模型优先优化这些困难样本。此损失借鉴了NT-Xent损失的思想,但将正样本对定义为。最后,通过对比学习优化聚类中心,将同一聚类在。为了获得更具代表性的聚类中心,论文提出。为了学习更鲁棒的表征,模型在在线网络。首先,论文定义了样本。

Christo的博客 829

【产品经理修炼之道】- 优惠券系统从入门到精通(一)

为了满足企业的优惠券业务,优惠券系统一般需要包含哪些功能?这篇文章里,作者从架构、功能等维度做了拆解,一起来看看吧。此部分主要讲解为满足公司优惠券业务,需要优惠券系统必须包含哪些功能,即优惠券架构图。

xiaoli8748的专栏 1810

分布式系统架构 - 学习/实践

使用分布式系统主要有两方面原因。 增大系统容量。 我们的业务量越来越大,而要能应对越来越大的业务量,一台机器的性能已经无法满足了,我们需要多台机器才能应对大规模的应用场景。所以,我们需要垂直或是水平拆分业务系统,让其变成一个分布式的架构。 加强系统可用。 我们的业务越来越关键,需要提高整个系统架构的可用性,这就意味着架构中不能存在单点故障。这样,整个系统不会因为一台机器出故障而导致整体不可用。所以,需要通过分布式架构来冗余系统以消除单点故障,从而提高系统的可用性。 当然,分布式系统还有一些优

"代码"的日常搬运 4439

FPGA经验谈系列文章——3、逻辑级数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Xilinx FPGA开发tips系列——前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 一、pandas是什么? 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的

gzy0506的博客 1万+

01.27 Day 43 - 提炼 Day 1-Day 7

大家好,我是 Snow Hide,作为《左耳听风》这个专栏的学员之一,这是我打卡的第 43 天,也是我第 50 次进行这种操作。 今天我温习了该专栏里叫《分布式系统架构的冰与火》、《从亚马逊的实践,谈分布式系统的难点》、《分布式系统的技术栈》、《分布式系统关键技术:全栈监控》、《分布式系统关键技术:服务调度》、《分布式系统关键技术:流量与数据调度》、《洞悉 PaaS 平台的本质》的文章。 关键词总...

纽雪澳诺加海美德的博客 424

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

软件架构 - 学习/实践

主要用于学习软件架构的演变, 分类, 以及各自优缺点与使用场景. 掌握使用不同的架构, 从而搭建高性能, 高并发稳定的服务.

"代码"的日常搬运 557

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

微服务架构设计 - 学习/实践

学习目前流行的微服务架构模式, 并且结合具体情况,采用合适的架构模式,开发高可用可扩展易维护的系统.

"代码"的日常搬运 4172

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

技术分享连接汇总[201801]

内容整理自->java高级交流群【329019348】更多Java高级交流文章 2018/01/02 坑人无数的Redis面试题 为什么epoll会那么高效 《Programming Kotlin》 select / poll / epoll: practical difference for system architects Obfuscation causes VerifyE

六月星空2011的博客 1415

什么是分布式系统!以及分布式系统架构的优缺点!

现在的架构很多,各种各样的,如高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等,还有和这些架构相关的管理型的技术方法,如 DevOps、应用监控、自动化运维、SOA 服务治理、去 IOE 等等,还有很多。那什么是分布式系统?分布式系统是支持分布式处理的软件系统,是由通信网络互联的多处理机体系结构上执行任务的系统。包括分布式操作系统、分布式程序设计语言及其编译系统、分布式文...

OnTheRoad的博客 7万+

左耳朵耗子:聊聊分布式系统架构

点击关注 InfoQ,置顶公众号程序员的 8 点技术早餐作者|陈皓编辑|杨爽学习任何技术,善于提纲挈领总是事半功倍。学习分布式系统架构也是如此,只要找到这张网的纲,就能更有效率地做好架构和工程。本文首发于陈皓在极客时间 APP 上开设的《左耳听风》专栏,推荐订阅。写在前面 最近几年,我们一直在谈论各式各样的架构,如高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等。还有和这...

weixin_33920401的博客 571

分布式系统 并不是我想象中的那样

分布式系统 并不是我想象中的那样

1030

高危工业场景人员定位系统设计:四类场景的架构选型与部署要点

本文由航飞光电一线工程团队整理,重点讨论高危工业场景下人员定位系统的架构选型思路。覆盖危化、矿山、港口、电力四类场景,拆解技术路线分工、融合引擎跨区切换实现,以及私有化/本地化部署中的工程难点,供架构师与技术负责人参考。

HF17513371855的博客 367

热管理系列之八:终局判断 - 浸没式冷却、混合架构与技术路线图

动力电池热管理三条路径的终局判断:液冷极致优化守住基盘,直冷在中高端渗透,浸没式冷却从概念到量产。附2026-2030技术路线图与关键产业信号分析。

weixin_54917114的博客 1153

【STM32】 ADC 完全指南:从模拟信号采样量化到五大架构原理

本文系统介绍ADC核心概念与五大主流架构。模拟信号具时间与幅值连续性,需经采样(满足奈奎斯特准则防混叠)、量化(引入±1/2LSB误差,SNR≈6.02N+1.76dB)、编码三步转为数字信号。重点解析Flash(并行高速但受限于比较器数量)、SAR(逐次逼近,低功耗适合MCU如STM32)、双积分(高精度抗工频,用于万用表)、流水线(高速吞吐)及Σ-Δ(高分辨率,靠过采样与噪声整形)五类架构原理、优缺点与应用场景。强调分辨率≠精度,选型本质是速度、精度、功耗与面积的权衡。

专注后端与底层技术,分享实战干货与学习笔记,梦想进入字节跳动,步履不停,热爱不止。 498

零信任架构实战:基于天远运营商三要素详版V即时版构建自动化线上授信身份核验网关

破解线上信贷身份核验痛点:从离散证件图片审查到运营商三要素详版数据穿透直连 在互联网消费金融、小额循环信用贷款以及各类纯线上数字化授信平台的业务演进过程中,移动端进件的身份真实性校验是构筑整体合规风控体系的第一道关键屏障。随着移动互联网的高度普及,个人信贷申请全面向移动端 App、微信小程序以及轻量级 Web 门户迁移,“秒级审批、免抵押、纯线上放款”成为了

2501_94041864的博客 161

政务知识库AI架构选型:强合规约束下的架构决策与落地路径

政务知识库是典型的强合规导向场景,架构选型的第一原则是「合规一票否决」:安全优先级高于效果,可控性优先级高于体验,所有技术决策必须先通过等保、密评、信创、数据不出域四大硬性红线校验,再在此基础上优化检索准确率与用户体验。对应部署在互联网政务服务域、政务外网办公域、涉密内网核心域,三域物理隔离,数据仅能通过审批流程单向摆渡,禁止跨网调用模型与流转数据。• 放弃通用文档加载器,基于公文格式标准开发定制化结构化解析器,自动提取文号、标题、发文机关、成文日期、生效日期、密级、主题词等元数据,与分片内容绑定入库。

2401_89363342的博客 368

AI高密度算力推动冷却架构升级,全球数据中心高功率CDU市场CAGR达23.0%

QYResearch调研显示,2025年全球数据中心高功率CDU市场规模大约为2.04亿美元,预计2032年将达到9.97亿美元,2026-2032期间年复合增长率(CAGR)为23.0%。未来几年,本行业具有很大不确定性,本文的2026-2032年的预测数据是基于过去几年的历史发展、行业专家观点、以及本文分析师观点,综合给出的预测。

QYR_11的博客 193
上一篇: MySQL 过滤重复数据
下一篇: 01_MySQL下载、安装与配置(以MySQL8.0.31版本为例)
AIGC镜像空间
博客等级 码龄5年 4万+粉丝 689原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值