像梦一样奔驰|毕业就在小公司躺了3年,再想找个老实的大厂待着,发现没人要…( 四 )
例如商品的修改和写入动作相比较于商品的浏览访问量肯定少很多 , 那我就将商品的浏览再剥离出来单独做一个服务 , 这样便于扩容 。
这用户量上来 , 访问量增加这样的服务剥离你会发现越来越多 , 服务的数量到时候就上来了 , 而且需求也会不断增加 , 推荐服务啊、搜索服务啊等等很多很多 , 只是为了简便都没列出来 。
上面提到的那些服务于微服务的组件也得部署 , 也得保证可靠性...你看这系统就越来越复杂了 , 所以服务化之后解耦了业务 , 却又融入了非业务相关的东西 。
不过服务化其实是一个自然的结果 , 就像我们平时去的办事大厅会根据服务类别划分成不同的服务窗口 , 为了办一件事情我能可能需要在各个窗口之间来回走动 , 这对应的不就是调用链路长嘛?走动的耗时等于我们调用的网络开销 。
所以说微服务架构是发展到一个阶段自然而然的演进产物 , 早在微服务这个概念被提出之前 , 很多公司就已经是这样干的了 。
我上面提到的其实是微服务1.0架构 , 而微服务2.0就是为了将非业务功能剥离出来而提出的 , 将服务治理的功能放在 SideCar 即边车上 , 使得开发者专注于应用业务的开发 , 进而演进出 Service Mesh 即服务网格架构 。
SOA和微服务谈到微服务你会发现 SOA 这个名词经常伴随着出现 。
关于SOA和微服务我查阅了很多资料 , 不过对于这两个名词的解释都各执一词 , 没有一个统一的答案 。 今天我就说说我的理解 , 抛砖引玉 , 有纰漏之处 , 敬请指正 。
SOA , 全称 Service-Oriented Architecture即面向服务的架构 。 说到SOA就离不开 ESB , 全称Enterprise Service Bus 。 SOA和微服务一样都是面向服务的 。
可以看到 SOA 架构通过企业服务总线进行交互 , 也就是说中心化 , 需要按照总线的标准进行开发改造 , 而微服务是去中心化的 。
其实我们可以抓到关键字企业 , SOA 我认为是企业级别的面向服务概念 , 而微服务是应用级别的概念 。
两种都是面向服务 , 只是 SOA 注重的是企业资源的重复利用 , 把企业的各个应用通过 ESB 进行整合 。
而微服务注重的是应用级别的服务划分 , 使得应用内服务边界清晰 , 易扩展 。
这两者其实是两个方向的面向服务 , 互不冲突 。 还能是包容的结构 , 如下图所示
分布式和集群分布式可以认为是通过网络连接多个组件而形成的系统 。
广义上说前后分离的应用就能算分布式 , 前端的 js 代码在浏览器跑着 , 后端的代码在服务器跑着 , 两种不同的组件合力对外提供服务构成分布式 。
而我们常提到的分布式是狭义上的 , 指代不同的组件通过协作构成的系统 。
而集群常指的同一个组件多实例而构成逻辑上的整体 。
这两个概念不冲突 , 分布式系统里面可以包含集群 , 像我们的商品服务就可以是集群部署 。
絮叨今天主要简述了下架构的演进 , 单体应用的优缺点以及微服务的优缺点 。
再谈了谈SOA 和微服务之间的区别 , 以及分布式和集群的区别 。
说了这么多 , 也不知道有没有说清楚 , 个人能力有限 , 如果有纰漏 , 敬请指正 , 分布式事务也在疯狂爆肝中 , 我们下篇文章见 。
另外 , 敖丙把自己的面试文章整理成了一本电子书 , 共 1630页!目录如下 , 还有我复习时总结的面试题以及简历模板
现在免费送给大家 , 回复 【资料】 即可获取 。
推荐阅读
- 芒种风向标|奔驰全新S级的内饰好看吗?不得不说优秀全靠同行衬托
- 奔驰E级|奔驰E级:开始清仓,为什么降到35万还有库存
- 光明论|劳动者的尊严不能像证件一样被“扔”在地上
- 懂车善用|如今跌破22万,比奔驰C漂亮,22万开出50万面子,曾经卖60万
- 有车以后|2 万多!,最便宜的奔驰 SUV 新款上市,价格又便宜了
- 胖哥汽车频道|或取消2.0T发动机,奔驰国产全新C级谍照曝光
- 科技日日说|realme真我X7全方位评测:不一样的颜值,不一样的体验!,原创
- 王者荣耀|没有明世隐的“狼狗”不能玩?正确玩法教给你一样凯瑞全场!
- 像梦一样奔驰|51WDP开发者平台五大工具全面开放,让数字孪生触手可及
- 虎扑足球|巴黎也是一样,莱昂纳多:任何俱乐部要签人都得先卖人
