背景
单体架构
一台服务器+一个数据库
缺点:无法容灾,流量大了,无法扩容
解决方案:
负载均衡器 + 一台服务器 + 一个数据库
流量打到负载均衡器上,进行动态的扩缩容,这个会引发另一个问题,由于单体架构没有明确的物理学边界,研究人员多了会出现冲突,所以接着引入微服务架构。
微服务:
优点:开发、测试、部署、运维的一些工作可以更好的分工
缺点:服务通信需要一些grpc等框架,还会引入分布式缓存如Redis、分布式追踪服务等,这些都是分布式的一些转型。原本只需要运维一个应用,现在需要运维的应用数量更很多,然后会有许多patch。
综上云原生架构孕育而生
serverless
不关心服务器、自动弹性、按使用计费等,都是为了实现这个理念而服务
- 静态站点
- 服务编排
serverless使用场景
- 静态网站托管
- 计算力又很大的弹性需求,例如:AI推理,音视频剪辑,在线文档等
- 事件驱动,定时任务