使用应用程序交付控制器作为一项服务快速推出新的云和移动应用程序
应用程序交付控制器 (ADC) 是从基本服务器负载平衡功能单元演化而来的,以便完全与云工作流和预配 置系统相集成,从而帮助用户向移动工作人员快速推出新的应用程序,提高终端用户的满意度,并减少应用 程序部署时间和成本。在本文中,作者定义了 ADC 并介绍了其进化和工作方式,指出了云环境给 ADC 带来 的挑战,介绍了一个有助于开发的真实 ADC 云产品,还详细介绍了其 ADCaaS 在 IBM? SmartCloud? Enterprise 和 IBM PureSystems 环境中的工作方式。
数据中心在网络和服务器基础架构、应用程序数量和复杂性、用户类型以及终端用户设备多样性方面经历 了极大的变革。但是人们都期望业务应用程序(从 eCommerce 到 CRM、订单管理、email、协作式服务等能 够提供付快速响应时间并且全天候可用,可确保多个位置的一致性和无缝访问以及具有防弹安全性。
推出一个新服务或扩展一个现有服务时,应用程序交付控制器(application delivery controller,ADC )通常扮演关键角色:它们充当了 “应用程序网关”,通过管理客户端流量使应用资源全球化, 并执行细粒度负载分布、端到端的应用程序加速、带宽管理、缓存以及应用程序和传输安全性。其结果是实 现更高的应用程序可用性、更快的响应时间和更好的安全性。
ADC 内部
ADC 通常安装在服务器农场前端以及网络防火墙和锚点应用程序安全网关之后,如图 1 所示。
图 1. 典型 ADC 网络部署图
在介绍云环境中的真实 ADC 解决方案之前,本小节其余部分将介绍 ADC 的演变、操作剖析和虚拟环境给 ADC 部署带来的挑战,特别是应用程序可用性、性能和安全性方面的挑战。
ADC 演化成业务应用程序和虚拟数据中心
第一代 ADC 解决方案重点关注常用网络和应用程序优化与可扩展性。提高服务能力非常简单:将新应用 程序服务器安装和添加到服务器农场之后,您需要做的是将新服务器添加到相关 ADC 流量重定向策略,开始 对已扩展的农场服务器之间的流量进行负载平衡。
第二代 ADC 解决方案承认,当为供应商量身定制解决方案时,应用程序可以得到更好的优化。ADC 经过 了 Microsoft、Oracle、SAP、IBM、VMware、Radware 等供应商的领先业务应用程序的验证。
采用数据中心虚拟化生态系统,与数据中心的动态变更保持同步,真正 “意识” 到请求式业 务应用程序,需要以具有成本效益的方式进行扩展,并降低成本(所有这些都需要一种新型 ADC,因此引入 了第三代 ADC),提供一整套服务以确保物理和虚拟数据中心的可用性、性能和任务关键型应用程序的安全 性。稍后进一步详细讨论。
ADC 如何运作
ADC 提供一套功能来优化企业级应用程序部署。ADC 从基础负载平衡演化成了一组增强应用程序可用性和 性能的功能。
常见 ADC 功能集包含以下可增强应用程序可用性和性能的功能。
对于应用程序可用性,ADC 可以通过以下技术提高应用程序可用性并保证 SLA:
本地服务器负载平衡:保证高质量的 SLA,确保最好的服务器总是为客户端请求提供服务,同时减少服务 器过载。
健康状况监控:避免将流量重定向到不可用的服务器。
全局服务器负载平衡:确保业务连续性和灾难恢复 (DR),并保证对于全球部署的服务向客户提供高质量 SLA 和质量体验 (QoE)。
链接高可用性:促进可靠的、可扩展的、低成本站点连通性,同时优化应用程序端到端响应时间。
在应用程序性能领域,ADC 可加速应用程序性能、缩短应用程序响应时间并卸载服务器处理,其中包括:
TLS/SSL 卸载:通过在服务器执行时卸载服务器处理任务并增加延迟的加密/解密任务,最大程度地提高 服务器基础架构的利用率。
缓存:利用 ADC 的静态和动态缓存,智能地将浏览器发送到 ADC,以交付更快速的页面加载。
其他压缩技术:减少内容大小、连接数和 TCP 协议优化。
图 2 介绍了 ADC 部署如何提供应用程序可用性、性能和安全性。