UNIX设计哲学:
保持接口与实现的简单性,比系统的任何其他属性,包括准确性、一致性和完整性都来得更加重要。

在这个阶段提出的分布式架构的目标:使用多个独立的分布式服务来共同构建出一个更大型的系统。而这个目标,从历史的局限性就决定了他不可能 是一蹴而就的解决分布式系统中的难题。其中面临的最大问题就是:由于调用本地方法与调用远程方法的差别,如何像调用本地方法一样去调用远程方法

那“远程”二字代表了什么呢?

  1. 首先不可能 用内联等传统编译原理中的优化算法,来提升运行速度
  2. 远程所带来的网络环境问题,包括:
    • 远程服务在哪里–>服务发现
    • 有多少个–>负载均衡
    • 网络出现分区,超时出错怎么办–>熔断,隔离降级
    • 方法参与返回结果如何表示 -->序列化协议
    • 如何传输–>传输协议
    • 服务权限怎么管理–>认证授权
    • 如何 保证通信安全–>网络安全层
    • 如何 令调用不同机器服务返回相同的结果–>分布式数据一致性

针对大部分问题,DCE从0开始从无到有回答了其中大部分的问题。

总结

在这个阶段采用分布式架构,为了解决上述各种问题,所付出的代价远远超过了所取得的收益。那接下来该如何发展呢?

  1. 尽快提升单机处理能力,以避免分布式的种种问题
  2. 寻找更完美的解决方案,来应对上述在构筑分布式系统的问题
某个功能能够进行分布式,并不意味着它就应该进行分布式,强行追求透明的分布式操作只会自食其果

行文思路:

思考题

今天以微服务为代表的分布式系统,是如何看待简单的?

思考:

微服务所谓的简单,不管是从开发工具、开发形式亦或是运维上来看,都是在趋于看上去的简单。把复杂 留给 自己,简单留给别人。易开发、易部署、易扩展、易运维等等的说法。都在宣誓着把简单作为主要的原则 ,但背后所面临着诸如本节课所有的讨论的问题,都是需要一一关注,一一解决的。所以我觉得这里的简单并不是真正的简单。

周志明架构课--01.原始分布式时代相关推荐

  1. 周志明架构课--03.SOA时代:成功理论与失败实践

    SOA架构是第一次被广泛使用过.通过分布式服务来构建信息系统的工程实践.它有完善的理论和工具,可以说,它解决了分布式系统中,几乎所有主要的技术问题 所以本节就系统的讨论一下SOA的设计思想与原则,找找 ...

  2. 周志明论架构之道:从SOA时代到微服务时代

    SOA 架构(Service-Oriented Architecture) 面向服务的架构是一次具体地.系统性地成功解决分布式服务主要问题的架构模式. 为了对大型的单体系统进行拆分,让每一个子系统都能 ...

  3. 《周志明的软件架构课》学习笔记 Day11

    1.主动学习 TCC事务 TCC(Try-Confirm-Cancel) TCC 方案,它天生适合用于需要强隔离性的分布式事务中,它是一种业务侵入性较强的事务方案,要求业务处理过程必须拆分为" ...

  4. 《周志明的软件架构课》学习笔记 Day1

    1.主动学习 每个开发者都需要学习「如何构建一个可靠的分布式系统」 工作这么多年,发现架构设计,还是需要从业务中来迭代,「作为一名架构师,在软件研发的过程中,最难的事儿,其实并不是如何解决具体某个缺陷 ...

  5. 周志明:《凤凰架构:构建可靠的大型分布式系统》

    架构模式的每一次演进都是凤凰涅槃 系统架构的每一次迭代都是浴火重生 构成系统的每一个部件都是一只不死鸟 构成大规模系统的每一个部件都可以是不可靠的,会出错,会老朽,甚至是消亡,如何让不可靠部件构成的系 ...

  6. 读《周志明的软件架构课》--学习笔记和感想随笔

    主要记录对周老师的<周志明的软件架构课>的学习笔记,本篇章是对课程不可变基础设施部分的学习,从虚拟化的技术理解容器技术的产生和发展,从部署运维角度理解应用的封装,从网络虚拟化理解容器网络, ...

  7. 豆瓣9.8分,周志明的《凤凰架构》,高屋建瓴,推荐(送书)

    导读:周志明老师的<深入理解Java虚拟机>想必大家都不陌生,这本书凭借着生动易懂的文风.系统实用的知识点.成为原创计算机图书经典中的经典.周老师凭借一己之力拉高了 Java 开发者内功水 ...

  8. 【读书笔记《凤凰架构》- 构架可靠的大型分布式系统.周志明】(一)

    1. 前言 整部书分为5部分,除了第一章讲分布式架构的历史,其他四章都偏技术. 书本的作者提也到,再看书前最好先理解本书的排版的逻辑(尽管每一章都被设计为可以单独阅读) 但除第1部分, 剩下的4个部分 ...

  9. 【第64期】豆瓣9.8分,周志明的《凤凰架构》

    导读:周志明老师的<深入理解Java虚拟机>想必大家都不陌生,这本书凭借着生动易懂的文风.系统实用的知识点.成为原创计算机图书经典中的经典.周老师凭借一己之力拉高了 Java 开发者内功水 ...

最新文章

  1. 算法----- 给定一颗二叉树,找到二叉树上任意两个节点之间的距离(Java版本)
  2. python实现简单的api接口-Python 实现接口测试的简单实例
  3. 走在前沿的弄潮儿,怎能不会Git的那些奇技淫巧
  4. 只能计算机论文,谈计算机及人工智能技术发展-人工智能论文-计算机论文.docx...
  5. 使用Seq搭建免费的日志服务
  6. 【渝粤题库】陕西师范大学800001 自然地理学
  7. 我的世界python写游戏_快来试试Python写的游戏《我的世界》
  8. echarts源码:图标类插件开发
  9. KVM 虚拟机在物理主机之间迁移的实现 -- 静态迁移/动态迁移/存储迁移
  10. Phaser Matter Collision Plugin 碰撞插件 -- iFiero技术分享
  11. 【智造】从《美国工厂》看中国制造企业的国际化探路
  12. easyexcel导入获取表头并且表头为不固定列
  13. php音频格式 操作,php操作视频音频类-ffmpeg-php
  14. 斐讯路由刷华硕固件后指示灯颜色修改
  15. 王道训练营3月24日
  16. 杀毒软件网络测试环境,杀毒软件开学摸底测试 360杀毒基础最牢
  17. python倒计时代码turtle_python实现屏保计时器
  18. GPU图形处理器与CPU区别
  19. android10 三星升级计划,三星公布Android 10.0国行升级计划:规模庞大
  20. Android和Java中的回调函数

热门文章

  1. 003 愚人节的“礼物”
  2. few-shot learning个人总结
  3. PCI Express解析——系列文章【2】:PCIe原理分析之——PCI Express线路基础
  4. 数据中台(元数据篇)
  5. mvc3和dz nt v3.6完美跨域登陆整合解析
  6. Android大话设计模式 第三章----开放封闭原则---孙悟空任弼马温一职
  7. C++校园疫情防控管理系统
  8. Linux 开发学习
  9. 【油猴脚本 Greasemonkey】GM_xmlhttpRequest内部实现原理
  10. 1.windows11开启wsl2并安装Ubuntu 20.04