大区别: 原生云应用 vs 传统企业应用

区别一服务器

可预测的。原生云应用符合一个框架或“契约”,旨在经过可预测的行为最大限度地恢复弹性。在云平台上使用的高度自动化、容器驱动基础架构驱动了软件编写的方式,这种契约的一个很好的例子是这12个原则首先被证实为12要素应用。 网络

不可预测的。传统企业应用由于每一个应用程序的独特设计或开发而没法实如今一个原生云平台上运行的全部好处,这种类型的应用程序一般须要花费更长的时间来构建,大批量发行,只能逐步扩展,并假定依赖服务的高可用性。 架构


区别二框架

操做系统的抽象。原生云应用架构容许开发人员使用平台做为从底层基础结构依赖项抽象的手段。团队没有配置、修补和维护操做系统,而是专一于他们的软件 。抽象的最有效的手段是一个正式的平台,好比,Pivotal Cloud Foundry是理想的基于云计算的基础设施,如谷歌的云平台操做(GCP)、微软Azure和亚马逊网络服务(AWS)。 运维

依赖操做系统。传统的应用程序架构容许开发人员在应用程序和底层操做系统、硬件、存储和后台服务之间创建紧密的依赖关系。这些依赖关系使应用程序在新的基础设施复杂和危险的状况下迁移和扩展应用程序,与云模型工做相反。 ide


区别三微服务

适当容量。一个原生云应用平台在部署应用程序持续须要的时间里,自动化基础设施准备和配置,动态分配和从新分配资源。在原生云运行时上的构建优化了应用程序生命周期管理,包括扩展以知足需求、资源利用率、跨可用资源的编排,以及从失败中恢复到最小化停机时间。 工具

超大容量。传统的IT为应用程序设计了专用的自定义基础设施解决方案(“雪花基础设施”),延迟了应用程序的部署。该解决方案每每是基于最坏状况容量估计,规模过大,几乎没有能力扩大,以知足需求。 测试


区别四优化

 协同。原生云结合人、过程和工具促进DevOps,致使开发和运营功能之间的紧密协做,以加速并顺利地将已完成的应用程序代码转移到生产中。 

筒仓。传统的IT将完成的应用程序代码从开发人员移交给运维人员,而后将其运行到生产中。组织优先权优先于客户价值,致使内部冲突、缓慢和妥协交付,以及员工士气低落。 


区别五:

持续交付。IT团队一旦准备好就能够发布单独的软件更新。迅速发布软件的组织得到更严格的反馈循环,能够更有效地响应客户的需求。持续交付与其余相关方法最有效,包括测试驱动开发和持续集成。 

瀑布式开发。IT团队按期发布软件,一般是几个星期或几个月,当代码被构建到一个版本中时,尽管发布的许多组件早就准备好了,而且没有依赖于人工发布工具的依赖。顾客想要或须要的功能被延迟,商家错过了竞争、赢得顾客、增长收入的机会。


区别六

独立的。微服务体系结构将应用程序分解为小型的、松散耦合的独立操做服务。这些服务映射到较小的独立开发团队,并能够频繁、独立地更新、缩放和故障转移/重启,而不会影响其余服务。 

依赖。单体架构将许多不一样的服务捆绑到单个部署包中,从而致使服务之间没必要要的依赖性,并致使在开发和部署过程当中失去灵活性。 


区别七

自动化的可伸缩性。规模化的基础设施自动化消除人为错误形成的停机时间。计算机自动化面临着这样的挑战,在任何部署规模上始终如一地应用相同的规则集。原生云也超越了传统虚拟化导向的编排之上的点对点自动化。彻底的原生云架构是自动化系统,而不是服务器。

手动缩放。人工基础设施包括手工精细操做和管理服务器、网络和存储配置的人工操做器。在规模上,因为复杂度的问题,操做员在正确诊断问题时很慢,而且很难在规模上正确地实现。手工制做的自动化配方有可能将人为错误硬编码到基础设施中。


区别八

快速恢复。容器运行时和编排器提供了一个动态的、高密度的虚拟化覆盖在VM之上,理想的状况是与托管微服务相匹配。编配动态地管理跨vm集群的容器的放置,以便在应用程序的基础设施失败时提供弹性伸缩和恢复。

缓慢恢复。基于vm的基础设施对于基于微服务的应用程序来讲是一个缓慢而低效的基础,由于单个vm在启动/关闭时很慢,甚至在部署应用程序代码以前就会有很大的开销。

相关文章
相关标签/搜索