云原生技术演进脉络
1. 虚拟化时代
虚拟化技术:
VMware 和 Xen 等虚拟化平台使得物理服务器可以运行多个虚拟机,提升资源利用率。
关键技术:虚拟机管理程序(Hypervisor)、虚拟网络、虚拟存储。
2. 云计算的兴起
基础设施即服务(IaaS):
云服务提供商(如 AWS、Google Cloud、Azure)开始提供按需分配计算资源的服务。
用户可以通过 API 动态地创建、管理和销毁虚拟机。
平台即服务(PaaS):
提供应用开发和部署平台,如 Google App Engine、Heroku。
开发者可以专注于代码编写,而不需要管理底层基础设施。
3. 容器化技术
Docker 的诞生:
2013 年,Docker 引入了容器技术,使得应用程序及其依赖可以封装在轻量级的容器中,确保跨环境的一致性。
关键技术:Docker 引擎、Docker Hub、Docker Compose。
容器编排:
随着容器的广泛使用,管理大量容器的需求变得迫切。
Kubernetes:2014 年,由 Google 开源的容器编排平台,成为事实上的容器编排标准。
其他编排工具:如 Docker Swarm、Apache Mesos。
4. 微服务架构
微服务:
将单体应用拆分为多个独立的服务,每个服务负责特定的业务功能。
关键概念:服务发现、负载均衡、API 网关、服务间通信(如 gRPC、REST)。
服务网格:
Istio 和 Linkerd 等服务网格技术,为微服务间的通信、监控和安全提供了基础设施层支持。
关键功能:流量管理、可观测性、安全策略。
5. 无服务器计算(Serverless)
函数即服务(FaaS):
用户只需编写函数代码,部署后由平台自动处理扩展、负载均衡等工作。
示例:AWS Lambda、Azure Functions、Google Cloud Functions。
事件驱动架构:
基于事件触发的执行模型,常用于处理异步任务、实时数据处理等场景。
思考:
云原生技术百花齐放,但是还是有大的发展演进脉络:
1、从容器化开始,Kubernetes 作为云原生技术基石,经过多年快速发展,复杂度逐渐趋于瓶颈,对用户认知负荷太大和使用门槛变高导致满意度下降。
2、在意识到这一点后,很多云原生产品的发展和演进上都在尝试收口,屏蔽技术细节、降低用户复杂度。
3、如 Service Mesh、Dapr、Serverless、一站式开发者门户,以应用为核心的应用及基础设施统一编排。参考从汇编到 C 到 Java 的演进,这个是符合事务演进趋势的。
版权声明: 本文为 InfoQ 作者【虚实的星空】的原创文章。
原文链接:【http://xie.infoq.cn/article/a57bab9ce83967c936dc253ec】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论