从单体式到分布式:应用演进对ADC的影响

F5生态系统 | 2025年2月18日

3篇博客中的第2篇(上一篇博客)

应用是数字生产力的引擎,也是将原始算力转化为实用工具的主力。这些工具让日常生活更加便利,并改变了工作、出行、娱乐和工业领域。应用涵盖各种软件程序,从帮助订购外卖的应用,到引导太空卫星、驱动装配线,以及为撰写本博客提供文字处理功能的软件。

应用程序历经显著演变,从专为特定计算任务设计的基础程序,发展为由AI赋能、依靠分布式环境中各类输入驱动的动态现代应用。回顾近年来应用程序的发展历程,可以深入了解计算技术如何适应不断变化的用户需求、业务要求和技术创新,进而塑造我们的数字世界。然而,随着应用变得更加复杂、互联、个性化、易于访问且智能化,应用攻击面也随之扩大,使应用面临更高的恶意威胁和漏洞利用风险。简而言之,攻击面的扩大为网络犯罪分子提供了更多可乘之机,而他们也在不断创新,以突破持续演进的网络防御体系。

随着应用从物理数据中心的单体应用演变为如今高度分布式的AI应用,市场需要新一代ADC,将高性能应用安全与应用交付能力整合到一个平台中。

日益复杂且不断扩大的威胁形势本已严峻,而缺少能够提供一致的应用和API交付与安全能力的平台,又使问题进一步加剧。应用交付控制器(ADC)一直是技术栈的核心组成部分,为应用交付功能提供支持,但如今也需要不断演进,以满足当前环境中不断变化的需求。这些因素共同推动企业采用更全面的新策略,将应用安全与应用交付服务相结合,从而在多样化的IT生态系统中提供更全面的保护,并实现更简单、更统一的管理。

让我们从20世纪40年代最早的应用开始,了解这一发展历程。

应用 1.0:单体应用和三层应用

早在20世纪40年代和50年代,最早期的计算机并未真正采用我们今天所理解的应用程序,而主要使用机器语言和穿孔卡片进行编程。第一批应用程序,也就是我们所说的“应用程序1.0”,与20世纪60年代和70年代的集中式大型机一同发展。这些大型机运行单体应用程序,用于处理工资、库存和基本数据处理等任务。这些早期应用程序仅有一个代码库,由非常庞大的单一代码块构成,运行在彼此隔离的数据中心或企业办公室中。可以将其想象成一座坐落在偏远山丘上的城堡,四周有高墙和护城河保护;工作人员进入城堡,使用FORTRAN和COBOL等计算机语言访问集中式计算资源。

“日益智能、动态的应用依赖网络和连接,而这些网络和连接容易受到各种安全风险的影响,因此需要持续演进的安全风险缓解措施,以及针对分布式环境优化的应用交付服务。”

三层应用推动了单体应用模型的发展,将计算资源划分为三个不同的功能层,每层都有独立但相互连接的应用。表示层(即用户界面)由员工生产力软件等桌面应用负责(比如大家熟悉的WordStar);业务逻辑层包含应用服务器,用于处理用户请求和执行计算;数据层(即数据库)则负责存储和管理数据。

尽管三层应用比单体应用更具模块化和灵活性,但这种模式仍依赖物理数据中心基础设施和本地资源。在医疗、银行和政府等一些行业,单体应用和三层应用仍是常见模式。这些行业的遗留系统需要满足严格的监管要求,关键任务应用也不能停机。

应用 2.0:云、微服务和容器

20世纪90年代,电子商务的兴起开启了互联网时代。应用服务提供商(ASP)通过万维网提供类似云服务的Web托管服务,企业无需自行搭建基础设施即可发布HTML Web应用。只要用户能够通过拨号或宽带接入网络,就可以在全球任何地方使用这些Web应用。这些应用分为三层:消费者在家用计算机上使用互联网和Web浏览器软件,访问托管在ASP站点上的Web应用;ASP的数据库服务器则负责处理购买交易和存储客户数据。如今,Web应用在在线零售领域仍占据主导地位,并在推动基于Web的电子商务运营方面发挥了重要作用。

2010年代初,云计算带来了颠覆性变革。许多预测人士认为,本地数据中心将走向消亡,云计算将随之兴起。当时,人们纷纷讨论将所有计算迁移到云端,许多应用也经过现代化改造,开始在云环境中运行,或直接在云端开发,由此形成了云原生应用。

这些云原生应用针对云环境的规模和性能进行了优化,并从零开始基于微服务架构构建,为应用演进带来了又一次范式转变。基于微服务的应用不再是独立、统一的代码块,而是由多个可独立部署的小型微服务组成。每个微服务执行单一功能,并可通过API与其他微服务通信。模块化微服务在可移植容器中编排成应用。容器是自给自足的虚拟化计算实例,能够在不同环境中一致运行。与单体应用或三层应用相比,基于微服务的应用具有诸多优势,包括加快应用开发、提高可扩展性、增强灵活性以及实现服务复用。

然而,这些微服务组件来自公有云库和其他远程平台,并通过API或其他通信机制进行传输。这些分散的组件难以管理,而暴露API会扩大应用的攻击面,可能导致数据传输期间发生网络入侵,并使应用面临第三方库中的潜在漏洞。

应用3.0:分布式应用与AI

如今,应用正经历又一次范式转变。此前关于数据中心将消亡的预测被严重夸大。当前,许多组织的应用组合中既有传统应用,也有现代应用;这些应用在混合环境中运行,并使用本地、边缘和云端资源。因此,组织更需要一个一致的平台,无论应用和API位于何处,都能统一整合其交付与安全防护,而实现这一目标也变得更加复杂。

此外,应用日益复杂,不仅依赖基于云的微服务,还依赖实时数据流和新型输入。以典型的旅游网站应用为例:除了展示所选目的地的精美图片和相关内容外,还提供通过API实时访问的酒店客房、航班和租车预订引擎、实时天气预报链接以及交互式地图功能。这些现代应用高度互联,数据来源多样且动态变化,依靠混合云和分布式环境中的数据提供丰富的客户体验。

在这些已经高度集成的应用中加入AI,只会进一步增加复杂性并扩大攻击面。AI驱动的服务利用互联网络和设备中的数据,可能包括推荐引擎或聊天机器人;旅游网站可能会根据实时用户画像和预测分析,推荐个性化的目的地和活动,或提供动态定价算法监控服务。

AI应用需要处理海量数据,并采用复杂的流量模式,因此会频繁向企业数据存储以及AI工厂中的AI模型发出大量请求。AI工作负载通常部署在分布式基础设施上,包括公有云、边缘设备和混合系统,这使应用面临数据安全与隐私风险、针对AI模型的对抗性攻击以及基础设施漏洞。应对这些挑战,需要为API密集型应用提供全面的安全防护,并将其与高性能流量管理和应用交付服务相结合,从而支持部署在任何位置的现代AI应用和工作负载。

应用演进:功能增强,复杂性提升

从许多方面来看,应用的发展史就是计算技术本身的发展史:从20世纪40年代用于解决基础数学计算问题,发展到如今由AI赋能、接收众多远程系统输入的复杂动态应用。计算硬件日益普及且随处可用,这也反映了应用的发展历程。应用最初运行在只有专家才能操作、占据整个房间的大型机上,后来转向配备图形界面的台式机和笔记本电脑,用于个人用途和娱乐;如今又扩展到移动设备,通过随处可访问的Web应用和移动应用,并借助触摸屏和语音命令进行操作。

然而,这些日益智能且动态的应用依赖网络和连接,容易受到各种安全风险的影响,因此需要持续演进的安全缓解措施,以及针对分布式环境优化的应用交付控制器(ADC)。要更好地管理传统应用、现代应用和AI驱动型应用均在分布式环境中运行的新格局,就需要融合关键的应用交付与安全功能。我们认为,ADC是管理这一格局的适当技术。但要承担这一角色,ADC还需不断演进,帮助降低当今彼此割裂的数字生态系统所带来的运营复杂性和风险。

如需了解更多信息,请阅读本系列的上一篇博客文章《重塑ADC,满足不断演进的应用基础设施需求》。此外,敬请关注下一篇博客,了解应用安全如何随应用架构的变化而演进,以及为何这些变化要求ADC迈入新时代。


继续探讨ADC 3.0博客系列:应用安全的演进:迈向新一代ADC

分享

关于作者

相关博客文章

F5纪念2021年世界艾滋病日
F5生态系统 | 2021/12/01

F5纪念2021年世界艾滋病日

值此世界艾滋病日,F5郑重承诺,将与员工、客户、社区和合作伙伴共同努力,消除社会对HIV感染者仍然存在的污名与偏见。

Thingbot正转变为攻击平台
F5生态系统 | 2018/11/29

Thingbot正转变为攻击平台

Lori MacVittie重点介绍了F5 Labs对2018年1月至6月全球物联网设备攻击的研究,并指出了其中令人警醒的影响。物联网设备不仅持续遭到利用,还被转变为攻击平台,这意味着攻击者可以更充分地利用这个必然增长的市场。

借助F5全新Quick Start,在AWS上快速开展业务
F5生态系统 | 2018/11/20

借助F5全新Quick Start,在AWS上快速开展业务

在AWS re:Invent开幕前,我们很高兴与大家分享F5与AWS之间全新的Quick Start集成。F5的Tom Atkins将介绍该服务如何启动、配置和运行在AWS上部署工作负载所需的计算、网络、存储及其他AWS服务。

为什么声明式模型对NetOps自动化至关重要?
F5生态系统 | 2018/04/30

为什么声明式模型对NetOps自动化至关重要?

为什么声明式模型对NetOps自动化至关重要?阅读F5博客,了解基础设施即代码如何简化网络扩展。

开源聚焦:F5基础设施即代码与多云可管理性
F5生态系统 | 2017/11/16

开源聚焦:F5基础设施即代码与多云可管理性

开源聚焦:基础设施即代码与多云。阅读博客,了解模板和Terraform如何简化F5应用服务的部署。

破解IT“无解困局”的答案:私有云
F5生态系统 | 2016/09/12

破解IT“无解困局”的答案:私有云

破解IT“无解困局”的答案:私有云。阅读F5博客,了解本地部署的敏捷性如何化解安全与速度难以兼顾的问题。