Serverless AI训练营:课时6:如何通过 0 改造,享受 Serverless 技术红利(一)
课时6:如何通过 0 改造,享受 Serverless 技术红利(一)
这门课主要是讲 Serverless 时代下大规模微服务应用实践。也就是阿里云SAE(Serverless Application Engine),它能0改造,享受到Serverless的技术红利。
内容介绍
一、微服务架构的优点和痛点
二、全面 Serverless 时代下的解决方案
三、SAE的技术原理和极致弹性建设
四、总结和展望
一、微服务架构的优点和痛点
1.微服务架构的优点
大家都能理解微服务能带来很多的优点,它能够做到解耦,释放团队
的效率。由于架构的复杂会带来非常大的稳定性的困扰。
2. 微服务架构的痛点
由于架构的复杂会带来非常大的稳定性的困扰。
如果没有一个平台或者云资源,能够将这些东西都包住,那么一个微服的开发者要实现比较健壮、比较齐全的微服体系的话,他需要去做到网关、应用发布的相关流程、CI/CD等一些相关的东西,生命周期管理这块。
右边是监控、告警、服务治理、调用链分析、日志系统这块跟工具类相关的东西,为了可以帮助大家能够快速预防问题或者发现问题。
下面一层包括一些微服本身相关的包括微服务框架、配置中心、注册中心、眼流降级、压测等这些工具,都是没有的,都需要自己去维护。底层如果要采用原生相关的像容器和容器平台技术的话,还需要维护 Kubernetes 等相关的组件,最好还有一些资源的运维。
如果自己要完全非常便利的去实现一个微服架构体系是非常困难的。除非大公司里,有专门的团队去维护某一块相应的业务。但对于一个小的团队、小公司以及教学相关的个人,是非常非常困难的,也是不太现实的。
因为对大部分人来说,我只需要关心我自己,也只想关心我的业务系统,或者说我的本身的一个程序的开发,不希望关心其他的一些东西。Serverless 就是为了解决这些问题的。
二、全面 Serverless 时代下的解决方案
Serverless 经历过一个高峰,后来是热度降低,现在又慢慢起来了。
Serverless 的方向很正确,但是当时没有一个很好的环境去落地,也在一些探索下面,也有不同的Serverless 产品形态。函数计算相关的和SAE这种形态。这种也比较符合云计算信息的发展趋势。我们讲一下整体的SAE解决方案。
把简单留给用户、把复杂留给平台。原来我可能要搭建完整的一套解决方案的话,现在只需要SAE这一个产品就可以完全包住其他的工具相关、底层信息的一些信息,用户只需要关注业务。
1.SAE整体解决方案-0门槛 PssS
首先0门槛的 PaaS 模块,SAE给用户的一个界面就是一个白屏化的一个PaaS,极大的降低了用户的使用门槛,可以说是0门槛。
他的交互符合大多数人开发新做的一个盘。 PaaS的形制有插件、API等丰富的被集成为一个文明。包括命名空间环境隔离,细粒度权限控制等。特别是针对于 java 语言,我们通过注入 agent 整体上实现了一个无入侵的一个状态。
2.微服务治理体系
在微服体系上也分为两个形态,一个是开发态Dev,一个运行态Ops。开发态包括服务元信息、服务契约管理、服务测试、服务Mock、开发环境隔离、端云互联。
运行态在发布态、安全态、高可用方面都做了一些努力。包括无损下线、无损上线、金丝雀发布、A/B Test、全链路灰度。在安全态上做了一些服务鉴权、漏洞防护、配置鉴权。
高可用像离群实例摘除、限流降级、同AZ优先路由、就近容灾路由都是在运行态做的努力。
1. SAE整体解决方案-微服务治理增强
Agent可以帮助我们0改造,去实现很多功能。包括一些业务,可能都不需要改配置,就像原来微服务还需要填入注册中心的一些配置中心的地址。通过这个 Agent 我们可以帮用户直接 Moke 的。就是说连配置都不用改,直接将这些应用部署到 SAE 上面。