架构初探
软件架构
软件架构是有关软件整体结构与组件的抽象描述,用于指导软件系统各个方面的设计(ByteDance)
云计算
云计算是指通过软件自动化管理,提供计算资源的服务网络,是现代互联网大规模数据分析和存储的基石。
-
IaaS(Infrastructure as a Service)
IaaS,是云服务提供商提供的基础设施。
如果把互联网的产品和服务比作一幢大楼,那么IaaS公司,就是「卖地皮」的,其他一些互联网公司,只有买了IaaS的地皮(服务器),才能够自建大楼和超市往外售卖产品和服务。 -
PaaS(Platform as a Service)
PaaS,是给客户提供云服务提供商支持的编程语言、库、服务以及开发工具,便于客户创建、开发应用程序并部署在相关的基础设施上。
如果把互联网比作一幢大楼,那么PaaS公司,就是在自家地皮上,盖好了一个「毛坯写字楼」,其他互联网公司,要想给用户提供特色不同的服务,就得自己租下其中的一层,自己装修好对外迎客。 -
SaaS(Software as a Service)
SaaS,是给用户提供能够在云基础架构上运行的云服务提供商的应用程序。
如果把互联网比作一幢大楼,那么SaaS公司,就是卖「精装修的商铺」,其他互联网公司,只要付钱买了他们的产品和服务,通过账号和密码,登录后就可以立刻对外开张做生意。 -
FaaS(Function as a Service)
FaaS 提供了一个计算平台,在这个平台上,应用以一个或多个函数的形式开发、运行和管理。
大多数 FaaS 平台基于事件驱动(Event Driven)的思想,可以根据预定义的事件触发指定的函数应用逻辑。
云原生
云原生实际是云原生(计算)的简称,他是元计算发展到现在的一种形态。
代表技术
- 容器化
- 服务网格
- 微服务
- 不可变基础架构
- 声明式API
涉及方向
- 弹性资源
- 微服务架构
- DevOps
- 服务网格