什么是云原生?
云原生(CloudNative)是一个组合词,Cloud+Native。Cloud表示应用程序位于云中,而不是传统的数据中心;Native表示应用程序从设计之初即考虑到云的环境,原生为云而设计,在云上以最佳姿势运行,充分利用和发挥云平台的弹性+分布式优势。
按照官方的定义,云原生应用有4大特征:
1、微服务
微服务优点多多,将庞大的系统分解成若干较小较简单的小系统,而总体功能不变,解决了问题的复杂性。每个微服务独立开发,技术栈可灵活选择,利于并行开发;每个微服务高内聚,微服务间低耦合,利于整个系统的扩展性;提高了系统的复用性;每个微服务独立部署,独立配置和优化,提高系统稳定性和运维灵活性。
缺点就是并非所有功能都适合做成微服务,比如数据库操作。由原本的单体系统,分拆成多个部分,微服务间通信成本升高了。部署工作量增大。
2、容器化
微服务运行在容器里。容器可以使用docker。由于容器众多,需要管理,这时可以用Kubernetes。Kubernetes 这个单词来自于希腊语,含义是 舵手 或 领航员 ,名字很长,由于k和最后一个字母s之间有8个字符,所以kubernetes又叫k8s。
3、持续交付
小步快跑,敏捷开发的特性之一。敏捷开发还有其他特征,比如项目切分成小项目(与微服务不谋而合),适应性计划调整,用户参与,短平快会议,较少的文档,自动化测试,小版本发布,迭代、增量,持续集成和重构。
丑媳妇终见翁婆,早死早超生;船小好调头的意思吧。
4、DevOps
开发与运维一体化,其实其内涵就是强调团队合作,售前,开发,测试,运维通力合作。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/leftfist/article/details/114032304