大家好,我是 Snow Hide,作为《左耳听风》这个专栏的学员之一,这是我打卡的第一天,也是我第一次进行打卡这种操作。

今天我温习了该专栏里一篇叫《分布式系统架构的冰与火》的文章。

关键词总结:增大系统容量、提高系统可用性、分布式系统的发展和由来、单体应用、SOA 架构、微服务。

所学总结:

使用分布式系统的原因

使用分布式系统的原因有以下两点:

当系统资源不足时

这种情况是当我们的机器或云服务器已经无法满足业务的持续增长,在资源层面需要做水平的扩展才能应对业务方面不断增长的趋势。

当系统容易出错时

当我们只将应用部署在一台服务器上时,如果发生 断网、断电、软/硬件故障 等这些问题,那么用户就无法正常使用该应用。
所以,为了让系统能长期的维持一个正常运作的状态,我们需要将其别分部署在不同的机器或服务器上,以确保当其中的某台机器发生上述任何一个问题时,应用依然能够正常的工作。

分布式系统的优势

  • 模块化:提高可复用性
  • 细粒度拆分:提高开发和发布的速度
  • 扩展性:降低添加需求的成本
  • 团队协作:高效划分团队成员的职责

分布式系统的劣势

  • 复杂的架构(其中的分布式事务首当其冲)
  • 多个服务的部署流程较为耗时
  • 系统的访问量会增长,系统的请求返回时间会相应的变长
  • 服务数量增长后,运维的复杂系数也会相应的增长
  • 复杂的架构会加大技术员对技术方面的理解难度
  • 多个服务会提高测试和调试的难度
  • 多种技术所组成的服务会增加运维的难度
  • 多个服务之间的管理会变的困难

分布式系统的历程

由来

上世纪 70 至 90 年代之间,架构师们认为 SOA 能够将服务的不同实现拆分开,以提高服务的重用性。

SOA 特性

  • 一个服务对应一个业务逻辑
  • 一个服务包含一个完整的业务逻辑
  • 客户端可以不用了解服务里的业务逻辑
  • 一个服务可以由它下一层的其他服务所组成

SOA 原则

  • 服务的重用性、模块化、可组合性
  • 遵守通用或工业的开放标准
  • 服务的分类、识别、发布、监控

SOA 架构演进

  1. 高耦合(Monolithic,单体架构):一个应用里包含多个服务
  2. 中耦合(SOA,面向服务架构):服务依赖中间件进行沟通
  3. 弱耦合(Microservices,微服务架构):服务之间可以独立的运行

末了

文中还提到了微服务中所使用的服务编排技术,像目前比较成熟的由 Google 开源的 Kubernetes 容器编排工具。

大家一起来做任务吧

《分布式系统架构的冰与火》

12.16 Day 1 - 分布式系统架构的冰与火相关推荐

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

    什么是分布式系统 分布式系统(distributed system)是建立在网络之上的软件系统. 以上是摘自百度百科的解释,不可否则,分布式系统的基础是网络.计算.存储.比如常见的一个Web单体系统, ...

  2. java游戏2333整合包,[1.12.2][CatServer]基础插件简单MOD冰与火传说整合服务端

    包含内容: 插件列表: 彩色标语-MOTDColor1.7.X 传送君TPAPro v1.2 登陆AuthMe-5.6.0-SNAPSHOT 服务器优化LaggRemover-2.0.5 更多声音pl ...

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

    点击关注 InfoQ,置顶公众号 程序员的 8 点技术早餐 作者|陈皓 编辑|杨爽 学习任何技术,善于提纲挈领总是事半功倍.学习分布式系统架构也是如此,只要找到这张网的纲,就能更有效率地做好架构和工程 ...

  4. 分布式系统的冰与火与技术栈

    最近在极客时间看到一个课程叫<左耳听风>,第一反应是叫这个名字,太不突出重点了,能好卖吗.但当了解作者后,发现是我错了.作者好牛比啊.所以要感受下骨灰级程序员的魅力.先从分布式系统入手学习 ...

  5. 《大规模分布式系统架构与设计实战》

    <大规模分布式系统架构与设计实战> 基本信息 作者: 彭渊 丛书名: 大数据技术丛书 出版社:机械工业出版社 ISBN:9787111455035 上架时间:2014-2-21 出版日期: ...

  6. 大型互联网分布式系统架构技术要点

    大型互联网分布式系统架构技术要点 解决问题的通用思路是将分而治之(divide-and-conquer),将大问题分为若干个小问题,各个击破.在大型互联网的架构实践中,无一不体现这种思想. 架构目标 ...

  7. 【大型分布式网站】抗住千万流量的大型分布式系统架构设计

    一.大型分布式网站架构技术 1.1 大型网站的特点 用户多,分布广泛 大流量,高并发 海量数据,服务高可用 安全环境恶劣,易受网络攻击 功能多,变更快,频繁发布 从小到大,渐进发展 以用户为中心 免费 ...

  8. 美团即时物流的分布式系统架构设计

    背景 美团外卖已经发展了五年,即时物流探索也经历了3年多的时间,业务从零孵化到初具规模,在整个过程中积累了一些分布式高并发系统的建设经验.最主要的收获包括两点: 即时物流业务对故障和高延迟的容忍度极低 ...

  9. 从 Elasticsearch 来看分布式系统架构设计

    云栖君导读: 分布式系统类型多,涉及面非常广,不同类型的系统有不同的特点,批量计算和实时计算就差别非常大.这篇文章中,重点会讨论下分布式数据系统的设计,比如分布式存储系统,分布式搜索系统,分布式分析系 ...

最新文章

  1. ASP.NET动态的修改主题
  2. JZOJ 5384. 【NOIP2017提高A组模拟9.23】四维世界
  3. 20165310java_blog_week6
  4. hihocoder #1015 : KMP算法
  5. 南怀瑾《处事箴言》摘录
  6. C++ struct实现顺序表
  7. XML解析-Dom4j的DOM解析方式更新XML
  8. 阿里巴巴Java开发手册——速读记录
  9. mysql c 调用存储过程返回值_Mysql:使用返回值调用存储过程
  10. DOM元素的大小和位置
  11. 论文赏析[EMNLP19]用控制任务来设计并解释探测任务
  12. SWAT模型学习小技巧(前言)
  13. 360浏览器截图快捷键设置
  14. Thermal engine 解析
  15. 利用c++深究周立功usbcan盒的学习
  16. python进行邮件文件.eml.pst.msg信息提取(包括附件)
  17. js使用双层for循环实现倒三角形、正三角形
  18. 我的挨踢人生(16)——往事如云烟
  19. dingo php,dingo/api 使用
  20. 驻点运维人员被客户投诉要求换人,换还是不换?

热门文章

  1. Codechef June Challenge 2020 简要题解
  2. PyTorch 自然语言处理(Natural Language Processing with PyTorch)翻译完成 | ApacheCN
  3. 程序史简史:从巴贝奇到爱达在到图灵
  4. 怎样摆脱焦虑型依恋?
  5. The Tao of Programming
  6. http请求头中的host是什么意思
  7. 我的世界(12)-服务器领地(Residence插件)
  8. 微信小程序学习打卡(2)
  9. python实现证件照更换背景颜色
  10. 为什么计算机不显示u盘,电脑不显示u盘盘符_电脑不显示u盘怎么回事