云原生的候选应用

前言,到底哪些应用适合云原生?

云原生应用适合于多种场景,‌包括高并发、‌高负载的Web应用、‌大数据处理、‌容器化应用程序、‌微服务架构、‌DevOps、‌智能物联网、‌云原生区块链应用以及大数据和机器学习。‌

  • 高并发、‌高负载的Web应用:‌云原生应用可以快速扩展,‌以满足不断增长的用户访问需求。‌
  • 大数据处理:‌云原生应用能够处理大量数据,‌并在处理时使用更少的计算资源。‌
  • 容器化应用程序:‌云原生应用使用容器来管理和分配资源,‌具有灵活性和可移植性。‌
  • 微服务架构:‌云原生应用通常采用微服务架构,‌提高模块化和可维护性。‌
  • DevOps:‌云原生应用与DevOps文化相结合,‌实现自动化测试、‌部署和监控。‌
  • 智能物联网:‌通过使用容器和Kubernetes等技术,‌构建高性能、‌可扩展的物联网平台。‌
  • 云原生区块链应用:‌实现快速部署、‌弹性扩展、‌自动化运维等功能。‌
  • 大数据和机器学习:‌通过使用容器和Kubernetes等技术,‌实现资源管理和弹性伸缩。‌

云原生应用通过利用云计算平台的资源管理能力,‌能够根据负载需求自动扩展或缩减资源,‌提供更好的性能和用户体验,‌同时有效利用资源并降低成本。‌此外,‌云原生应用还依赖于云平台提供的核心服务,‌如弹性计算、‌存储、‌数据库、‌消息队列等,‌为应用程序提供可靠且高性能的基础设施和数据存储支持12。‌

1. 云原生价值评估和分析

考虑一下您的组织需要构建哪些应用程序。然后,看看您投资组合中的现有应用程序。其中有多少需要云原生架构?全部需要?还是部分需要?

通过成本/收益分析,很有可能有人不会支持这一努力。云原生化的成本将远远超过应用程序的商业价值。

1.1 哪些类型的应用程序可能适合云原生?

  • 需要不断发展业务能力/特性的战略企业系统
  • 需要高发布速度的应用程序 - 具有高信心
  • 必须发布单个功能而无需重新部署整个系统的系统
  • 由精通不同技术栈的团队开发的应用程序
  • 具有必须独立扩展的组件的应用程序

1.2 小规模应用的选择方向

规模较小、影响较小的业务线应用程序可能更适合在云 PaaS 环境中托管的简单单片架构。

然后是遗留系统。虽然我们都想构建新的应用程序,但我们通常负责对业务至关重要的遗留工作负载进行现代化改造。

2. 对旧版应用进行现代化改造

免费的 Microsoft 电子书《使用 Azure 云和 Windows 容器实现现有 .NET 应用程序的现代化》提供了有关将本地工作负载迁移到云的指导。

图 1-10 表明,对于实现遗留应用程序的现代化,并没有单一、一刀切的策略。

图 1-10 . 迁移旧式工作负载的策略

2.1 单片应用程序迁移

非关键的单片应用程序可能会受益于快速的直接迁移。在这里,本地工作负载被重新托管到基于云的 VM,而无需进行任何更改。此方法使用IaaS(基础架构即服务)模型。Azure 包含多种工具,如Azure Migrate、Azure Site Recovery和Azure 数据库迁移服务,以帮助简化迁移过程。虽然这种策略可以节省一些成本,但此类应用程序通常并非旨在释放和利用云计算的优势。

2.2 旧版应用程序迁移

对业务至关重要的旧版应用通常会受益于增强的云优化迁移。此方法包括部署优化,可启用关键云服务 - 而无需更改应用程序的核心体系结构。例如,您可以将应用程序容器化并将其部署到容器编排器,如本书后面讨论的Azure Kubernetes Services。一旦进入云,应用程序就可以使用云支持服务,例如数据库、消息队列、监视和分布式缓存。

2.3 迁移云原生后有哪些受益?

**提供战略性企业功能的单体应用可能从云原生方法(本书的主题)中获益最多。这种方法提供了灵活性和速度。**但是,它需要重新构建平台、重新架构和重写代码。随着时间的推移,遗留应用程序可以分解为微服务、容器化,并最终重新构建为云原生架构。

2.4 从哪些方面抉择是否选择云原生应用能?

如果您和您的团队认为云原生方法是合适的,那么您应该与您的组织一起合理化这一决定。云原生方法究竟能解决哪些业务问题?它如何与业务需求保持一致?

  • 能否更加自信地快速发布功能?
  • 细粒度的可扩展性------更有效地利用资源?
  • 提高了系统弹性?
  • 提高了系统性能?
  • 更深入地了解运营情况?
  • 融合开发平台和数据存储以获得最适合工作的工具?
  • 面向未来的应用投资?

3. 总结

在本章中,我们介绍了云原生计算。我们提供了定义以及驱动云原生应用程序的关键功能。我们研究了可能值得进行这种投资和努力的应用程序类型。有了前面的介绍,现在我们将更详细地了解云原生。

相关推荐
为什么这亚子4 小时前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
ZHOU西口6 小时前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
牛角上的男孩6 小时前
Istio Gateway发布服务
云原生·gateway·istio
JuiceFS8 小时前
好未来:多云环境下基于 JuiceFS 建设低运维模型仓库
运维·云原生
景天科技苑8 小时前
【云原生开发】K8S多集群资源管理平台架构设计
云原生·容器·kubernetes·k8s·云原生开发·k8s管理系统
wclass-zhengge9 小时前
K8S篇(基本介绍)
云原生·容器·kubernetes
颜淡慕潇9 小时前
【K8S问题系列 |1 】Kubernetes 中 NodePort 类型的 Service 无法访问【已解决】
后端·云原生·容器·kubernetes·问题解决
昌sit!17 小时前
K8S node节点没有相应的pod镜像运行故障处理办法
云原生·容器·kubernetes
茶馆大橘20 小时前
微服务系列五:避免雪崩问题的限流、隔离、熔断措施
java·jmeter·spring cloud·微服务·云原生·架构·sentinel
北漂IT民工_程序员_ZG21 小时前
k8s集群安装(minikube)
云原生·容器·kubernetes