云原生思想

面对单体地狱,开发者难以理解代码全部,开发速度变缓慢,部署周期变长,而且横向扩展也会遇到挑战,因为应用不同模块对资源的需求是互相冲突的,有些可能需要的是更大内存,有些可能需要的是高性能 CPU,作为单体应用,就必须都满足这些需求。项目开发完成后终归要到部署流程的,早期的传统做法是把应用程序直接部署到服务器上,但服务器的系统、环境变量等是会不断变化的,甚至安装了新的应用,还会引起和其他应用的冲突,导致应用本身需要跟着用户系统环境的改变而做出改变。,让开发者可以快速开发自己的业务,无需关心底层基础设施。
摘要由CSDN通过智能技术生成

云原生究竟是什么

云原生是一个组合词,即 Cloud Native 。

Pivotal (已被 VMware 收购)官网的 What is cloud native?[1] 一文中提到云原生是一种构建和运行应用程序的方法,云原生开发融合了 DevOps、持续交付、微服务和容器的概念在里面。

CNCF (云原生计算基金会)在 cncf/toc[2] 给出了云原生 V1.0 的定义:

云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式 API。

这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系统作出频繁和可预测的重大变更。

云原生计算基金会(CNCF)致力于培育和维护一个厂商中立的开源生态系统,来推广云原生技术。我们通过将最前沿的模式民主化,让这些创新为大众所用。

结合官方的定义,我个人对云原生简洁的理解就是:云原生并不是某种具体技术,而是一类思想的集合,用来帮助快速构建和运行应用程序,其中既涵盖着一整套技术体系(容器、服务网格、微服务、不可变基础设施和声明式 API),也包含着应用开发的管理要点(DevOps、持续交付、康威定律[3])。只要符合这类思想的应用就可以称为云原生应用。

云原生技术体系

云原生的一整套技术体系其实是紧密联系的,这得从软件架构的逐步演进说起。

即 单体 -> 微服务 ->

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值