云原生应用程序

在六,七年前云计算开始大步向前时,人们苦苦挣扎的重要问题之一是:“如果我想在公共云,私有云或混合云中运行它们,我的应用程序将是什么样子? ?

当时有很多方法可以回答这个问题。

一个流行的隐喻来自比尔·贝克(Bill Baker)的演讲,当时他在微软。 他将传统应用程序“宠物”与云应用程序“牛”进行了对比。 在第一种情况下,您要给宠物命名并在生病时护理它们恢复健康。 在后一种情况下,您给他们编号,如果其中一个发生问题,您会吃汉堡包并换一个。

还有其他尝试将这一区别编成法律。 “ 十二要素应用程序 ”是用于构建软件即服务应用程序的显式方法。 行业分析师Gartner从业务角度看问题,使用模式1和模式2区分传统IT(侧重于稳定性,健壮性,成本效益和垂直规模等属性)与云原生IT(强调适应性和灵活性)。敏捷)。

这些仍然是有用的观点。 许多现代,动态和横向扩展的工作负载均作为虚拟机在公共云和私有云(如OpenStack)中运行 。 显然,它们是根据与“ Big Iron”服务器上传统的按比例放大,长期运行的应用程序不同的原理开发和操作的。

但是,云原生通常意味着更具体的含义,尤其是在应用程序体系结构和设计模式的上下文中。 它是使用精细的API驱动的服务(也称为微服务)组成的容器化基础架构和应用程序的交集。 合并是偶然的。 像Netflix这样的公司正在推广微服务理念,以有效利用云计算。 首先通过早期的平台即服务产品实施容器,然后将其作为更广泛的标准化生态系统的一部分,容器是打包,部署和管理这些微服务的好方法。

过去几年中,容器的最大变化也许是可用于管理容器的工具的数量和成熟度的增加。

顺便说一句,不要太在意微服务术语。 重要的是应用程序的整体敏捷性和可维护性。 正如通过使用持续集成和连续交付的DevOps流程交付的那样,这往往会导致模块化和松散耦合的服务,这些服务的依赖关系已明确定义。

但是,并非所有事情都需要分解为仅通过公开的,稳定的API进行通信的单功能服务,如果这对应用程序的性质和团队的规模没有意义的话。

容器本身维护服务之间的资源和安全隔离。 它们提供了一种快速且节省资源的方式,可以根据需要启动其他服务,并在需求下降且不再需要它们时退役。 从开发人员的角度来看,容器也是一种出色的生产力工具,因为容器将内容打包为一系列的层,并且可以在需要补丁时快速,一致地进行更新。

过去几年中,容器的最大变化也许是可用于管理容器的工具的数量和成熟度的增加。 Kubernetes是最著名的。 它使Linux容器操作自动化,并消除了部署和扩展容器化应用程序涉及的许多手动过程。

但是,Kubernetes只是涉及容器生态系统中的开源项目的起点。 有像Prometheus这样的监视程序,有像Jaeger这样的分布式跟踪程序。 Istio服务网格连接,管理和保护微服务。 另一个开发领域是功能即服务(通常称为无服务器 ),它响应事件(某种触发器)执行功能(即执行某些操作的代码)。 一个主要的驱动力是进一步简化程序员创建新服务的方式。

许多甚至大多数工作负载都可以在云中或在多个云的混合组合中运行。 但是,“云原生”应用程序的想法是,在云计算革命爆发约十年后,我们对充分利用新型基础架构的最佳方法有了一些扎实的想法。 并且,反过来,我们将继续改进这些基础架构技术,以为应用程序开发人员提供所需的工具。 这就是云原生的真正含义。 灵活,可扩展,可重用的应用程序使用了可用的最佳容器和云技术。

接下来要读什么

翻译自: https://opensource.com/article/18/7/what-are-cloud-native-apps

云原生应用程序

云原生应用程序_什么是云原生应用程序?相关推荐

  1. 云原生的本质_什么是云原生?云原生和传统软件有什么区别?有什么特征

    云原生 很多人都会问"到底什么是云原生?"."云原生和传统软件有什么区别?". 背景 顾名思义,云原生应用即专门为在云平台部署和运行而设计的应用.云原生能够以可 ...

  2. 小样本点云深度学习库_基于点云深度学习的点云数据集制作系统及方法与流程...

    本发明涉及测控技术领域,尤其涉及一种基于点云深度学习的点云数据集制作系统及方法. 背景技术: 深度学习网络模型一般都是基于64线单帧激光数据集进行.但64线激光器和单帧的限定,造成了工程应用中点云数据 ...

  3. 支持python的云虚拟主机价格_万网云虚拟主机密码怎么样,python 购买虚拟主机测评...

    [腾讯云]  点击进入 高性能云服务器1核2G首年99元 [华为云]点击进入 2核4G5M企业级云主机707元/年 香港免备案主机129/年 [阿里云]点击进入 云服务器低至0.95折 1核2G EC ...

  4. 11无监听程序_腾讯开心鼠英语 小程序实践与总结

    腾讯开心鼠英语 团队中有很多小程序的项目,且后续还会很多小程序的开发和迭代规划,因此我们团队是小程序的重度使用者.在小程序的开发中,团队积累了一些技术和经验,也遇到了一些困难和挑战,还踩了很多坑,因此 ...

  5. plsql developer无监听程序_腾讯开心鼠英语 小程序实践与总结

    腾讯开心鼠英语 团队中有很多小程序的项目,且后续还会很多小程序的开发和迭代规划,因此我们团队是小程序的重度使用者.在小程序的开发中,团队积累了一些技术和经验,也遇到了一些困难和挑战,还踩了很多坑,因此 ...

  6. 渐进式web应用程序_如何使用渐进式Web应用程序更快,更便宜地构建新应用程序...

    渐进式web应用程序 You need an app! The question is- which kind? 您需要一个应用程序! 问题是--哪种? For the last 8 years or ...

  7. 您没有权限来打开应用程序_苹果建议:除非应用程序无响应,否则不要滑动强制退出...

    紫金财经2月26日消息 今日,苹果公司发布的一条建议,成为了微博热搜的话题.苹果建议除非应用程序无响应,否则不要滑动强制退出. 苹果公司表示,滑动关闭iPhone的应用程序可能会缩短电池寿命,并使设备 ...

  8. 渐进式web应用程序_如何在渐进式Web应用程序中添加到主屏幕

    渐进式web应用程序 添加到主屏幕 (Add To Homescreen) Here the web app install banner is focused on web app, with th ...

  9. 一个完整的嵌入式程序_放下偏见,原来嵌入式程序员如此“妖娆”!

    感兴趣的小伙伴可以来我的Java交流群,可以获取免费的学习资料 828 697 593 对Java技术,架构技术感兴趣的同学,欢迎加群,一起学习,相互讨论. 竟然都看到最后了,给小编点个关注吧,小编还 ...

最新文章

  1. linux重装系统后 70-persistent-net.rules 不能删除解决
  2. maven构建SSM工程[应用]1
  3. ruby1.8.6 安装watir是出现问题记录
  4. aspcms各版本漏洞0day集合
  5. 2017年秋招-广联达面试及思考
  6. 在 Pycharm下使Python2和Python3共用Anaconda中的各种库/包的解决方法
  7. 智能会议系统(24)---linphone-去掉蓝牙功能
  8. 关于模型分箱,最容易被忽略的这几点
  9. 使用decode函数
  10. P1550 [USACO08OCT]打井Watering Hole
  11. pandas—pandas.DataFrame.iterrows的使用
  12. Kubernetes 小白学习笔记(33)--kubernetes云原生应用开发-总结
  13. 从网上搜集的几种数据分页的总结
  14. 统计各班参加补考的人数
  15. hscan扫描mysql代码_HScan 扫描器
  16. maven出现错误 大难题-------
  17. 双X轴的Echarts图
  18. Python爬取人民网夜读文案
  19. 【uni-app】微信开发者工具注意点(微信小程序)
  20. classname库的使用

热门文章

  1. 云计算中的Iaas,Paas和Saas
  2. java排序算法之选择排序
  3. 超越传感器和相机 - 将物联网从云端迁移到物理世界
  4. 利用微服务构建现代应用(一)
  5. C语言 · 十六进制转十进制
  6. 职场潜规则:公司出现这三种信号,你必须果断辞职!
  7. 学习《HTML+CSS基础课程》里的权值
  8. 睡觉时,禁带6种东西,最后一点最严重,可能致命
  9. A2K课程目录及学习计划
  10. 统一建模语言UML轻松入门(1)――基本概念