互联网下半场不可不理解的云原生

互联网下半场不可不理解的云原生

作者:薛磊 2020-09-16 14:18:10

云计算

云原生 在目前快节奏的移动互联网时代,快速把握瞬息万变的市场需求,以最短时间上线自己的应用以抢占市场,成为众多企业在竞争白热化的市场洪流中占有一席之地的制胜利器。天下武功唯快不破,显然传统的开发模式已经无法适应这种快节奏的市场需求,在此背景下催生出敏捷、精益、DevOps等新概念的诞生,尤其以云原生为代表的下一代架构更是进入火箭式发展阶段,以容器、Kubernetes、Serverless等为代表的新技术引领移动互联网进入急速赛道。

在目前快节奏的移动互联网时代,快速把握瞬息万变的市场需求,以最短时间上线自己的应用以抢占市场,成为众多企业在竞争白热化的市场洪流中占有一席之地的制胜利器。天下武功唯快不破,显然传统的开发模式已经无法适应这种快节奏的市场需求,在此背景下催生出敏捷、精益、DevOps等新概念的诞生,尤其以云原生为代表的下一代架构更是进入火箭式发展阶段,以容器、Kubernetes、Serverless等为代表的新技术引领移动互联网进入急速赛道。

云原生不是某个单独的技术,而是技术与管理方法的合集。为便于读者在了解实践云原生架构的方法之前能有一个系统性的思维,在此详解云原生基础架构的代表技术,及利用云原生构建出来的云原生应用的特征。

容器

正如我们现实世界中的集装箱技术加速了贸易全球化的进程,容器技术的出现也解决了微服务架构下大量应用部署的问题,容器的环境自包含特性,可以让我们一次构建,到处运行,其不仅解决了虚拟机所能够解决的问题,同时也能够解决由于资源要求过高虚拟机无法解决的问题。容器的特点主要包括:隔离应用依赖、创建应用镜像并进行复制、创建容易分发的即启即用的应用、支持实例简单、快速地扩展等。

Docker 是当前流行的开源应用容器引擎,基于 Docker 容器化技术,用户可以将微服务及其所需的所有配置、依赖关系和环境变量打包成容器镜像,并轻松移植到全新的安装了 Docker 的服务器节点上,运维人员无须关心底层操作系统,且无须重新配置环境,这使得容器成为部署单个微服务的最理想工具。

不可变的基础设施

在传统的物理服务器或虚拟机部署方式,因其每个都有自己的特征,我们称之为宠物,当部署在宿主机上的应用出现故障,我们需要对症下药,排除问题恢复业务,但是在云原生架构下,我们称部署方式为牲畜,一旦应用部署完成之后,那么这套应用基础设施就不会再修改了。如果需要更新,那么需要现更改公共镜像来构建新服务直接替换旧服务。而我们之所以能够实现直接替换,就是因为容器提供了自包含的环境(包含应用运行所需的所有依赖),所以对于应用而言,完全不需要关心容器发生了什么变化,只需要把容器镜像本身修改即可。因此,对于云友好的基础设施是随时可以替换和更换的,这就是因为容器具有敏捷和一致性的能力,也就是云时代的应用基础设施。

容器编排引擎相关工具有 Kubernetes 、Swarm 等,用以解决容器的管理和调度问题。目前,由 Google 开源的 Kubernetes基本算是统一了容器编排的市场,实现了容器集群的自动化部署、扩缩容和维护等功能。

Kubernetes 与 Docker 相互配合、相辅相成,其中 Docker 是作为 Kubernetes 内部使用的低级别组件,而 Kubernetes 又可以高效管理调度 Docker 集群。

声明式的API

声明式不同于命令式,通过向工具描述自己想要让事物达到的目标终态,然后由这个工具自己内部去计算和实现如何令这个事物达到目标状态。简言之,声明式设计中,描述的是目标状态,其中就为我们极大的简化了实现过程中的异常情况及调度过程,我们只需要关注结果,无论使用什么方式,结果总是朝着我们定义的方向逼近,声明式设计也是一种设计理念,同时也是一种工作模式,它使得系统更加健壮。

微服务

微服务相较于单体应用,将架构进行拆解,解决了单体应用后期难以扩展和低效的开发效率等问题。根据领域模型将巨大的单体分成界限清晰的微服务,并保持每个服务独立可以迭代,具有服务高度自治、高效迭代、易于扩展和支持多语言编程等优点。
在我们享受微服务的灵活、开发的敏捷带来的利好时,对于众多的微服务,在运维、监控、部署、及分布式事务,服务之间的调用也提出了新的挑战。

服务网格

微服务之间该如何实现调用,以及中间的调用策略该如何执行,此刻就需要用到服务网格。目前服务网格架构有侵入式和非侵入式两种架构,区别在侵入式需要在开发框架中进行集成,需要使用SDK来实现一部分功能;非侵入式架构在部署阶段以sidecar模式与业务运行结合,通过接管网络流量实现透明代理,从而实现一系列网络策略及监控,开发者仅需专注业务即可,无需对代码进行修改,这种方式以服务网格(Service Mesh)为代表,让应用更加轻量,目前最火的服务网格技术有Istio、Linkerd、Dubbo Mesh等,将其下沉到基础设施层,用户可以快速编排出复杂环境、复杂依赖关系的应用程序,同时开发者又无须过分关心应用程序的监控、扩展性、服务发现和分布式追踪这些烦琐的事情,从而更专注于自身业务程序开发。

以上为DevOps工程师薛磊的微专栏节选。把握云原生技术,跟上新技术步伐,点击订阅3元专栏《云原生架构实践》!
 

 

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/255244.html<

(0)
管理的头像管理
上一篇2025-04-30 18:13
下一篇 2025-04-30 18:14

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注