要重新托管应用,需将其在环境之间迁移(通常是从本地迁移到云端,或在某些情况下,为特殊工作负载迁移回本地),但无需更改其核心架构或代码。
阅读本文后,您将能够:
复制文章链接
应用重新托管,也称为“提升和转移”,是指将应用从本地环境迁移至云的过程,且基本不改变其底层架构的过程。这种方法使组织无需对应用进行重构或深度修改即可快速迁移工作负载。
通过将应用迁移到云平台,企业可以减少对物理硬件的依赖,降低运营成本,并提高可扩展性和弹性。
向云环境迁移的背后存在几大关键驱动因素:
尽管大多数组织选择迁移至云端以获得这些优势,仍有相当一部分组织(通常是拥有特殊工作负载的大型企业)正在将特定应用重新托管回本地环境,以满足独特的性能、合规性或成本考虑。
应用现代化是指更新和迁移现有软件应用及其底层基础设施的过程,以更好地支持组织的安全性、性能和可扩展性需求。在这一整体进程中,重新托管是常见的实施方式之一。
虽然重新托管不会对应用本身进行重大更改,但它可以释放云的优势,并有助支持进一步的现代化工作,例如容器化、微服务采用或架构重组。
在某些情况下,重新托管是不需要重大升级的传统应用的最后一步。而在其他情况下,它可作为深度转型前的过渡阶段。
对应用进行现代化改造有多种不同的方法,包括:
每种方法在时间、成本和复杂性方面都有利弊。重新托管具有速度快、操作简单的优势,是那些希望在降低风险的同时加速云迁移的组织的一个务实选择。
重新托管不仅仅是将应用代码从数据中心中的服务器迁移到云中的虚拟机。这是一个系统化的过程,涵盖规划、自动化、测试和扩展等环节,不仅涉及计算资源的迁移,更包含整个应用基础设施的转移。
在将应用重新托管到云基础设施中之前,应充分了解需要移动的内容及其与其他系统交互的方式。
在发现阶段,规划关键的应用组件和依赖项,例如单体应用的二进制文件(包含所有逻辑的单个可部署单元,如 JAR、WAR 或 EXE)、服务器渲染的表示层(例如,JSP、ASP .NET)、直接嵌入应用中的业务逻辑,以及关系数据库(通常是单一的 RDBMS,如 Oracle、SQL Server 或 MySQL)。
还要考虑常见的依赖项,包括应用服务器(例如 Tomcat、WebLogic 或 IIS)、外部 API、身份验证系统、网络规则、硬编码 IP 或端点,以及任何其他连接的服务。此列表并非详尽无遗,但它涵盖了传统应用架构中的许多典型元素。
此步骤有助于避免迁移过程中出现意外,并确保所有迁移部件都得到妥善处理。
在完成关键依赖项梳理后,需评估应用在新环境中所需的要素:
此时也需评估配套技术栈:DNS、CDN、DDoS 防护和可观察性。重新托管也是对这些层进行现代化改造的机会。
云提供商对迁移工作的长期成功至关重要。虽然计算价格通常是第一个比较点,但您需要更深入地评估。
在评估云或现代化转型合作伙伴时,应重点考察提供商是否具备支撑性能、安全性及运营效率的全面能力体系。这包括:可弹性扩展的后端服务(能随需求增长而扩容,同时避免不可预测的成本激增),以及集成化的网络级安全功能(例如 Web 应用防火墙 (WAF)、DDoS 防护和细粒度访问控制)。
全球内容交付网络 (CDN) 对于确保快速、一致地向全球用户交付静态和动态资产也至关重要。提供商应提供内置的 DNS 服务,这些服务不仅快速可靠,还需支持可编程配置,以支持自动化和弹性。
最后,原生可观察性工具(或与现有日志和监控系统的无缝集成)对于在应用扩展和演进过程中保持可见性和控制力至关重要。
迁移成功的标准是应用能够正确、安全且高效地运行。在完成重新托管后,必须根据本地基准对延迟和吞吐量等关键性能指标进行基准测试,以确保应用满足用户预期。运行负载测试可以帮助模拟现实世界的需求,并发现在正常情况下可能不会暴露的问题。查看日志和警报对于识别可能影响可靠性或安全性的异常情况或错误配置也至关重要。
除了应用性能之外,团队还应该验证配套基础设施组件,包括 DNS 解析、CDN 行为、TLS 配置和防火墙规则,以确认它们在新环境中按预期工作。
作为迁移切换的一部分,流量引导在确保平稳过渡、避免客户停机方面发挥着关键作用。基于 DNS 的流量转移、加权负载平衡和金丝雀部署等技术可以帮助用户逐步从本地环境迁移到基于云的应用版本。这使得团队能够实时监控系统行为、及早发现问题,并在必要时回滚变更,并且所有这些操作都不会影响最终用户体验。在此关键阶段,必须仔细协调 DNS TTL、进行健康检查和监控覆盖范围,以保持服务连续性。
扩展应当具备前瞻性。若适合当前工作负载,建议采用自动扩展组或无服务器选项。同时需持续监控云支出:云迁移的成本优化在应用上线后仍需持续。
迁移后,持续可观察性有助于:
实施云原生或第三方监控以支持:
当组织需要快速迁移、避免繁重的开发工作或延长旧有系统的寿命时,重新托管通常是最理想的解决方案。对于正着手开展全面 IT 基础设施转型、同时希望减少物理基础设施依赖的组织来说,重新托管同样不失为一种适宜之选。
重新托管在以下场景中最为有效:组织拥有稳定但维护成本高昂的传统应用,且这些在本地环境中日益成为负担。该方案同样适用于需要快速退出数据中心的情况,或是当务之急在于以最小化现有应用代码库改动为前提迁移至云端的场景。
对于规划在未来进行更广泛现代化改造的团队而言,重新托管可以作为战略性的第一步,在当前实现基础性变革的同时,为未来的重构保留灵活性。在这些情况下,重新托管有助于扩大传统应用的价值,无需立即重写,从而有效地为组织赢得时间,待条件成熟时再推进深度现代化改造。
在评估重新托管作为应用现代化路径的效果时,请考虑以下因素:
重新托管可以提供一条摩擦相对较小的迁移到云的路径,从而帮助管理风险和资源限制。
重新托管可通过降低硬件维护和许可成本、数据中心开销及基础设施配置时间,在云迁移中实现短期成本优化。然而,仅靠重新托管可能无法完全优化长期成本。如果不进行重构或平台优化,应用可能无法利用自动扩展、无服务器架构或托管服务等云原生效率。
从短期来看,组织可以通过消除资本支出和物理基础设施需求,能够快速实现投资回报。但从长期看,要真正实现成本效益,则需要进行更深层次的优化,例如调整计算资源使用、合理配置实例规模和解耦单体服务,以提高可扩展性和资源分配效率。
虽然重新托管可以减少某些安全风险(例如依赖修补漏洞和过时基础设施的风险),但它也会带来新的风险。在受控的本地环境中安全的应用,若未通过云原生安全平台采取适当保护措施,可能在控制较弱的云环境中暴露风险。
成本是另一个关键考虑因素。如果没有主动管理,重新托管的应用可能会产生高于预期的云账单。例如,出口费用(将数据移出云提供商环境的费用)可能会迅速增加,这对数据密集型应用尤为明显。
为避免迁移到云后产生意外成本,组织应主动采取资源与成本管理措施。这包括密切监控使用趋势以识别规律和异常情况,并制定明确的成本治理政策来界定权责归属。通过自动化执行资源规格调整和闲置资源调度等任务,可有效减少浪费并优化支出。此外,在云平台内设置预算和告警机制,可以在成本超出可接受阈值前提供预警信号,帮助团队在环境扩展时保持控制力。
每个迁移策略都应把安全作为贯穿全程的核心考虑因素,包括:
成功的重新托管不仅仅是把应用复制到云端。执行不力的切换可能导致:
一个常见问题:客户或合作伙伴可能依赖于与应用的旧数据中心绑定的静态 IP 地址。如果这些 IP 地址未在他们那边更新,流量将会中断。组织必须预见这些依赖项,并主动与利益相关者协调,以确保顺利切换。
周密计划的重新托管应包括:
Cloudflare 通过以下方式加速应用现代化:转换视频和图像、对应用进行负载平衡以及在全球范围进行 DNS 解析,从而实现快速、可靠的性能。自动化保护可防御机器人、DDoS 和 zero-day 攻击,而集成的可观察性可确保跨云环境的合规性。通过这些功能,Cloudflare 强化了应用堆栈的每一层,实现安全、高性能且面向未来的现代化。
详细了解应用现代化。