谈谈我对云原生的理解

柳清风09 柳清风09     2022-12-01     429

关键词:

这里我不想再引用Pivotal的Matt Stine的定义,只是想从个人角度思考一下什么是云原生。云原生是啥?在我看来是一套思想,一套完整的方法论和体系。是不是太虚了,的确,云原生就是一套指导意见。它主要有几个核心的工具:

容器和基于容器的面向服务设计

这个是云原生的的基石,容器镜像将程序和依赖环境打包到一个镜像里面,然后这个镜像就可以随处分发启动,再通过k8s等管理平台编排的调度,对外提供服务能力。面向服务的架构设计和管理,摆脱繁杂的IaaS资源配置。
不仅如此Devops的发布流程也离不开容器镜像的支持,可以说容器和容器镜像是云原生的基石。

微服务和分布式

这个是对应用提的要求,新的软件架构从单体迁移到微服务和分布式。不仅提高了服务的扩展性和可维护性。而且在高可用和性能等方面都有所加强。微服务是一致面向故障的设计理念,每个服务都可能会出现问题,所以你需要多副本,跨地域或者AZ部署。微服务通常按照业务领域拆分成独立部署、运行的模块。

Devops和自动化运维

Devops是希望尽快的发布上线,如何快速发布,我们需要流水线和自动触发、如何保证服务稳定发布就需要借助灰度、金丝雀等。发布上线后并非完事大吉,后续生成环境还需要自动化的运维,包括服务的各种监控(log、metric、tracing)。在面对故障时能够自动恢复,面对突发流量的自动弹性。

总结,云原生不只是构建一套混合云,而是涵盖了整个软件生命周期,从软件架构(微服务)、开发模式(devops)、软件发布(k8s+容器)以及基础设施(cloud)等一整套方法论和标准和相关开源软件。

谈谈我对云原生与软件供应链安全的思考(代码片段)

2011年,互联网技术先驱MarcAndreessen宣称,软件正在吞噬世界(Softwareiseatingtheworld)。由软件驱动的行业创新正在颠覆着传统业务模式,推动着全球经济实现数字化连接。随着互联网的快速发展,数字化转型... 查看详情

简单谈谈对云原生领域mq组件kafka的理解

1.定义:kafka具备大吞吐量,内置分区,可以进行数据备份,同时具备数据容错性的消息系统。kafka主要特点体现如下:Kafka可以完成在线或者离线数据消费,所谓离线数据消费实际上就是kafka将消息数据保... 查看详情

谈谈我对promise的理解

一、Promise是什么?Promise是最早由社区提出和实现的一种解决异步编程的方案,比其他传统的解决方案(回调函数和事件)更合理和更强大。ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。ES6规定,Promise对象是一... 查看详情

谈谈我对springioc的理解

...家分享网上的一些技术大牛们对Spring框架的IOC的理解以及谈谈我对SpringIoc的理解。 1.1、IoC是什么Ioc 查看详情

谈谈我对多态的理解?

举例:父类:Person{}  子类:ChildextendsPerson{}父类的引用指向子类的对象:Personp=newChild();理解:在编译期认为p是父类的对象,在运行期认为p是子类的对象 ////////////////////子类执行方法的情况:  1.子类重写了父类方法,... 查看详情

你了解云计算吗?——谈谈对云计算的理解

...正理解云计算这三个字背后的本质呢?那么今天就来好好谈谈云计算是个什么鬼。但笔者自知才疏学浅,若有纰漏之处还望大家指正。一、云计算的由来与发展1.1云计算的由来?万物起源必有原因,云计算也不例外。谈到云计算... 查看详情

谈谈我对ajax的理解

  Ajax的全称是AsynchronousJavaScriptandXML中文名称定义为异步的JavaScript和XML。Ajax是Web2.0技术的核心由多种技术集合而成,使用Ajax技术不必刷新整个页面,只需对页面的局部进行更新,可以节省网络带宽,提高页面的加载速度,从... 查看详情

我所理解的云原生

...原生的前世今生(一)》跟大家分享了Pivotal和CNCF对云原生的定义,这篇聊聊我自己对云原生的理解。先抛结论,我理解的云原生是一种利用云计算交付优势来构建和运行应用的方法论,当你的应用按照云计算... 查看详情

谈谈我对闭包知识的深刻理解

在javascript中闭包应该是最难理解的一部分内容。在我看来闭包就是和作用域之间的联系。1、首先我们来了解一下javascript中的作用域知识。javascript中的作用域其实就指的函数作用域,因为只有函数在javascript中才能形成区域范围... 查看详情

谈谈我对多态的理解

其实要学好任何一门语言编程范式至关重要,理解几个维度的方面如出错处理是怎么玩的?内存管理是怎么玩的?数据封装和扩展怎么玩的?多态和泛型怎么搞的?运行时识别和反射机制是怎么玩的?并发编程怎样玩?…&hel... 查看详情

谈谈我对严格模式的理解

严格模式的目的消除JavaScript语法中不合理的地方;消除代码运行中不安全的地方;严格模式的修改全局变量显示声明,否则报错;静态绑定(禁用with语句,创建eval作用域);this不指向全局对象,值为undefined;(调用构造函数... 查看详情

也谈谈我对docker的简单理解

Docker能解决什么问题呢?一个工具的出现必然需要解决一些问题,Docker也不例外,简单说说我们常见的2种情况Docker是如何解决的吧。1、程序在我这跑得好好的,在你那怎么就不行呢?!这是一个典型的应用场景,作为程序员别... 查看详情

谈谈我对反向代理的理解

正向代理:由正向代理服务器对目标网站发起请求,而不是客户端。此时的正向代理服务器就充当客户端。因此网站服务器并不知道客户端的信息反向代理:客户端主机对反向代理服务器(目标网站服务器的信息在代理服务器的配置... 查看详情

谈谈我对dubbo的理解(每个阶段理解不同,会持续跟新)

2019-07-26初学阶段对dubbo有一个基础的认识,是一个提供了远程调用的框架。远程调用是以接口作为契约的,接口规定了方法签名,(尽量按值传递,不要传行为作为参数)。利用了zookeeper作为服务注册发现中心,这里不谈zookeeper... 查看详情

云原生这么火,你不来了解下?

目录一、前言二、大家对云原生的理解三、云原生的产生四、DevOps+持续交付+微服务+容器化的理解五、云原生技术栈六、怎么学习云原生呢?ⅠdockerⅡk8sⅢKubeSphereⅣSpringCloudⅤDevOps七、部署实战八、小结一、前言随着云计算的不... 查看详情

谈谈我对服务熔断服务降级的理解

伴随着微服务架构被宣传得如火如荼,一些概念也被推到了我们面前(管你接受不接受),其实大多数概念以前就有,但很少被提的这么频繁(现在好像不提及都不好意思交流了)。想起有人总结的一句话,微服务架构的特点就... 查看详情

谈谈我对"闭包"的理解

一、什么是闭包和闭包的几种写法和用法1、什么是闭包闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。闭包的特点:  1.作为一个... 查看详情

谈谈我对javascript中this对象的理解

this指针的隐式赋值this总是指向调用该方法的对象;在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window; 显示操纵this指针Javascript引擎通过以下两种方式允许我们显式指定this指... 查看详情