《周志明的软件架构课》学习笔记 Day1
1.主动学习
每个开发者都需要学习「如何构建一个可靠的分布式系统」
工作这么多年,发现架构设计,还是需要从业务中来迭代,「作为一名架构师,在软件研发的过程中,最难的事儿,其实并不是如何解决具体某个缺陷、如何提升某段代码的性能,而是如何才能让一系列来自不同开发者、不同厂商、不同版本、不同语言、质量也良莠不齐的软件模块,在不同的物理硬件和拓扑结构随时变动的网络环境中,依然能保证可靠的运行质量。」
架构的演进
在微服务之前,我们也是需要了解架构的演进,为什么演进到现在的分布式微服务
软件架构风格从大型机(Mainframe),发展到了多层单体架构(Monolithic),到分布式(Distributed),到微服务(Microservices),到服务网格(Service Mesh),到无服务(Serverless)……
2. 写在最后
极客时间的大师公开课,「周志明的软件架构课」,为了分享和技术布道,这就和之前看过的乔新亮老师的专栏所说的一样:沟通创造价值、分享带来快乐
把自己“认为掌握了的”知识给叙述出来,能够写得条理清晰,讲得理直气壮;能够让别人听得明白,释去心中疑惑;能够把自己的观点交给别人审视,乃至质疑。在这个过程之中,就会挖掘出很多潜藏在“已知”背后的“未知”。
日拱一卒,主动学习
《周志明的软件架构课》学习笔记 Day1相关推荐
- 读《周志明的软件架构课》--学习笔记和感想随笔
主要记录对周老师的<周志明的软件架构课>的学习笔记,本篇章是对课程不可变基础设施部分的学习,从虚拟化的技术理解容器技术的产生和发展,从部署运维角度理解应用的封装,从网络虚拟化理解容器网络, ...
- 《周志明的软件架构课》学习笔记 Day11
1.主动学习 TCC事务 TCC(Try-Confirm-Cancel) TCC 方案,它天生适合用于需要强隔离性的分布式事务中,它是一种业务侵入性较强的事务方案,要求业务处理过程必须拆分为" ...
- 《周志明的软件架构课》学习笔记 Day6
1.主动学习 RESTful 服务 REST概念:资源,表征,状态,转移. 服务端与客户端分离(Client-Server) 无状态(Stateless) 可缓存(Cacheability) 分层系统 ...
- 《周志明的软件架构课》学习笔记 Day7
1.主动学习 本地事务如何实现原子性和持久性 事务处理 事务处理几乎是每一个信息系统中都会涉及到的问题,它存在的意义就是保证系统中的数据是正确的,不同数据间不会产生矛盾,也就是保证数据状态的一致性(C ...
- 《周志明的软件架构课》学习笔记 Day5
1.主动学习 远程服务调用(Remote Procedure Call,RPC) RPC 是我们构建分布式系统的最基本前置条件. 这篇文章我们来了解周志明老师笔下的 RPC. RPC 出现的最初目的, ...
- 《周志明的软件架构课》学习笔记 Day15
主动学习 负载均衡 集群部署的特点 信息系统都需要利用多台机器来扩展服务能力,希望用户的请求不管连接到哪台机器上,都能得到相同的处理. 必须对用户一侧保持足够的透明,即使请求背后是由一千台.一万台机器 ...
- 《周志明的软件架构课》学习笔记 Day16
主动学习 服务端缓存 为系统引入缓存的理由 从开发角度来说,引入缓存会提高系统的复杂度,因为你要考虑缓存的失效.更新.一致性等问题(硬件缓存也有这些问题,只是不需要由你来考虑,主流的 ISA 也都没有 ...
- 《周志明的软件架构课》学习笔记 Day13
主动学习 浏览器的客户端缓存 背景:当万维网刚刚出现的时候,浏览器的缓存机制差不多就已经存在了.在 HTTP 协议设计之初,人们便确定了服务端与客户端之间"无状态"(Statele ...
- 周志明jvm第三版笔记-第一部分:第一章 走进java
1.1 概述:java过去.现在.未来简要概述 1.2 java技术体系 Java技术体系包括了以下几个组成部分: Java程序设计语言: 各种硬件平台上的Java虚拟机实现: Class文件格式: ...
最新文章
- selenium 定制启动 chrome 的选项
- Examples osgparticleshader例子学习
- Android:安卓工程结构介绍
- java的this关键字理解
- SharePoint 2013 场解决方案包含第三方程序集
- Sentinel(八)之熔断降级
- donotage标记、MTU及MTU不匹配问题、OSPF邻居状态记录
- 检测技术再进化:人物交互检测,基于多层次条件网络的方法(ICMR2020)
- php7.0和5.6哪个好,PHP7.0与PHP5.6下Laravel博客的应用性能对比介绍
- Vue仿微信朋友圈项目
- 关于java模拟邮箱发送邮件的设计与实现
- 计算机教程无线路由器桥接上网,2个无线路由器桥接教程详细步骤
- Python/Basemap绘制美国人口分布示意图
- [转载】中移物联网NB模组注册指令生成小工具-M5310/M5310_A
- 外星人r7启动linux,外星人Alienware Aurora R7台式机装win7及bios设置教程(支持usb)
- 关于错误 Unhandled exception in (KERNEL32.DLL):0xE06D7363:Microsoft C++ Exce vc and access insert 记录
- html新增和删除行,html5页面结构的变化以及增加和删除标签的总结
- Android开发规范:APP版本发布(全量发布、灰度发布)
- 互信息建立基因网络(一)
- 开源一对一源码,一对一直播系统如何接入码支付
热门文章
- AttributeError: ‘FigureCanvasTkAgg‘ object has no attribute ‘set_window_title‘
- 小强升职记思维导图_《小强升职记》学习笔记(思维导图)
- shell切分字符串到数组
- Python小姿势 - Python爬取网页数据
- 计算机管理映像路径,手把手教你解决win7系统任务管理器显示映像路径的恢复办法...
- 伯克利BLAM纯激光SLAM
- RDKit入门教程(2)——利用RDKit获取分子指纹
- python实习——03
- 对梯度幅值进行非极大值抑制
- 4G的想象:移动视频行业将迎来大爆发