乐趣区

给创业公司的原生云-④Spine-L2

Spine L1是我们面向初创公司的原生云架构设计,业务服务基于 ParseServer,请求接入和负载均衡基于 API Gateway,业务服务部署在 docker 容器中,而容器运行在若干虚拟机 (ECS) 上,CI/CD 服务也运行在 ECS 上,源码当然是托管在 Github。

随着业务发展,公司的规模增大,产品线也会随之扩展。能否快速、灵活而低成本地地支持新业务的上线,老业务的成长,和新老业务间的交互与协同,是这个阶段架构的主要挑战。

依然是那句话:没有什么框架是通吃的,符合业务发展的架构才是好架构。

Spine L2

Spine L2 主要引入 OSS/CDN、弹性容器实例 (ECI) 和函数计算。他们是低成本地实现灵活性、可扩展性的利器。
以下服务都以阿里云为例,其他云服务提供商一般也都有相对应的服务。

主要服务

API Gateway

原生云服务:API 网关
https://cn.aliyun.com/product/apigateway

和 Spine L1 一样,API 网关依然是对接用户端的唯一入口。

Serverless 容器调度

原生云服务:弹性容器服务 ECI
https://www.aliyun.com/product/eci

Kubernetes(k8s)是成熟的开源容器调度系统,负责实现所有容器实例的“生老病死”,及实例之间纵横交错的通信联系。Serverless Kubernetes 则是指整个集群都不再直接运行在 ECS 服务器(”server”)上,而是运行在高度灵活计费的虚拟资源之上。对于 Spine L2 阶段的企业来说,相比 L1 阶段直接在 ECS 上部署容器实例的做法,在云上使用 Serverless Kubernetes 来调度容器可以显著降低运维成本,增加灵活性。此时,计算资源甚至可以 按秒、按 0.5CPU 粒度进行调度和计费。

函数计算

原生云服务:Lambda 函数计算
https://www.aliyun.com/product/fc

当我们提到要在后端增加一个接口时,第一想到的肯定是在 Web 服务里增加一个 Endpoint。但在原生云架构中,一个新接口可能只对应的一个不对应服务器的函数云。

函数计算云服务就是为了满足这种非常灵活的需求而生的。工程师只需要将具体的分析需求转换为代码,配置到对应的 API 上,完全不用担心所消耗的计算资源以及承载力。

Lambda 函数计算是个很有用的原生云服务,我们之后会不断的提到。

日志服务 Log

原生云服务:日志服务 LOG
https://www.aliyun.com/product/sls

日志服务不仅是为了记录服务器错误,快速修复 Bug。尽早开始把用户行为记录下来,也是产品快速进化的前提条件。采用原生云的 Log 服务而不用本地存储有很多好处,比如原生云 Log 对接 OSS,对接 MaxCompute;比如分级存储,比如对接原生云的 BI 服务等。

对象存储 OSS / CDN

原生云服务:S3 存储
https://www.aliyun.com/product/oss

文件存储一直是被重视,也忽视的部分。重视的是所有产品都会重视文件数据的读取速度,所以 CDN 是被最常提到的优化项。但忽视的是,文件数据也有可能被频繁的分析、修改、优化、甚至失效。所以,除了普通的读取保存数据之外,OSS 在 Spine L2 中,还具有如下重要的功能。

  • 区分生产,测试,开发不同环境的数据
  • 快速数据备份
  • 数据快速迁移(生产 -> 测试 -> 开发)
  • 数据过期失效删除
  • 对接函数计算对数据进行修改优化

监控面板

原生云服务:云监控
https://www.aliyun.com/product/jiankong

当产品上线,用户量开始增大以后,就有必要在办公室放一个大屏幕来监控服务器的性能了。像我们办公室里这样。

关于 BigEgg

大蛋科技是一家提供技术咨询、集成、开发服务的初创企业。

我们敏捷而深入地运用智能硬件、数据科学与机器学习、原生云计算等高效技术工具,创造性地帮助客户提升技术研发和运营效率,并持续、有计划地将技术沉淀输出,回馈国际开源社区。

公司地址:北京市朝阳区望京国际商业中心 F 座 4 层 Wework
商务合作:mr.robot@bigeggai.com
请关注我们的公众号获得更多信息,给我们留言

退出移动版