博客

从整体式到分布式: 不断发展的applications对 ADC 的影响

Greg Maudsley 缩略图
格雷格·莫兹利
2025 年 2 月 18 日发布

applications是数字生产力的引擎,是将原始处理能力转化为有用工具的主力,使日常生活变得更加轻松,并改变了工作、旅行、娱乐和工业。 这些软件程序包括帮助订购食品、引导太空卫星、为装配线提供动力以及提供帮助撰写此博客的文字处理的应用程序。 

随着时间的推移,应用s已经发生了巨大的变化,从为特定计算任务设计的基本程序发展成为由人工智能驱动并由分布式环境中的输入驱动的动态现代应用程序。 通过观察应用s近年来的发展情况,我们可以深入了解计算如何适应不断变化的用户需求、业务要求和技术创新以塑造我们的数字世界。 但随着应用程序变得越来越复杂、互联、个性化、可访问和智能,应用的攻击面也随之增加,使应用程序面临更大的恶意威胁和利用风险。 简而言之,扩大的攻击面为网络犯罪分子提供了更大的机会,他们不断创新以突破最新、最强大的网络防御措施。  

随着applications从物理数据中心的单体应用程序发展为当今高度分布的 AI 应用程序,需要新一代 ADC 将高性能应用程序安全性和应用程序交付功能融合到单一平台。

由于缺乏能够提供一致的应用程序和 API 交付和安全性的平台,这种日益复杂且不断扩大的威胁形势变得更加复杂。  应用交付控制器 (ADC) 在堆栈中发挥着核心作用,实现应用程序交付功能,但 ADC 现在需要发展以满足当今环境不断变化的需求。 所有这些因素共同推动了对新的、更全面的策略的需求,这些策略将应用程序安全性和应用交付服务相结合,为不同的 IT 生态系统提供更全面的保护和更简单、更统一的管理。 

让我们从 20 世纪 40 年代最早的应用程序开始,探索一下我们是如何到达这一点的。

applications1.0: 单体式和三层式应用

20 世纪 40 年代和 50 年代最早的计算机并没有真正使用我们今天所理解的applications。 它们主要使用机器语言和打孔卡进行编程。 第一批applications(我们可以称之为applications1.0)是在 20 世纪 60 年代和 70 年代的集中式大型计算机旁边成长起来的,这些计算机运行着旨在处理工资单、库存和基本数据处理等任务的单片applications。 这些早期applications仅限于单一代码库,即在独立的数据中心或公司办公室内运行的非常大的单一代码块。 想象一下,在山上有一座偏远的城堡,被高墙和护城河保护着,工人们去那里使用 FORTRAN 和 COBOL 等计算机语言来获取集中式计算资源。 

单体应用模型的进步在于三层应用s的出现,它将计算资源划分为三个不同的功能层,每个层都有独立但又相互连接的应用s。 表示层或用户界面由桌面应用s(例如工人生产力软件(hello,WordStar))控制,而业务逻辑层包括处理用户请求和执行计算的应用服务器。 数据层,或数据库,存储和管理数据。    

虽然三层applications比单片应用程序提供了更多的模块化和灵活性,但该模型仍然依赖于物理数据中心基础设施和内部资源。 在某些行业(包括医疗保健、银行和政府),单片和三层applications仍然是常态,这些行业的遗留系统需要满足严格的监管要求,而关键任务applications则无法承受停机。  

applications2.0: 云、微服务和容器

20 世纪 90 年代电子商务的兴起,开启了互联网时代。 应用服务提供商 (ASP) 在万维网上提供类似云的网络托管服务,企业可以启动 HTML 网络应用s,而无需建立自己的基础设施。 Web 应用程序可在全球范围内使用,只要用户有拨号或宽带接入,任何地方都可以使用。 这些应用s分为三层: 消费者使用家用电脑上的互联网和网络浏览器软件访问托管在 ASP 网站上的网络应用s,而 ASP 上的数据库服务器则负责购买和存储客户数据。 网络应用在网上零售中仍然占据主导地位,并且在推动网络上电子商务业务运营方面发挥了重要作用。  

2010 年代初是云计算颠覆的时代,许多预测者预测本地数据中心将消亡,而云计算将崛起。 在将所有计算转移到云端的讨论中,许多应用程序都已现代化以在云环境中运行或在云端开发:云原生applications。 

这些云原生应用程序针对云的规模和性能进行了优化,从头开始构建于微服务架构之上,这为应用程序的发展带来了另一种范式转变。 基于微服务的applications不再是独立的、统一的代码块,而是由小型的、可独立部署的微服务组装而成,每个微服务执行单一功能,并可以通过 API 与其他微服务通信。 模块化微服务被编排到便携式容器内的applications中,这些容器是自给自足的虚拟化计算实例,能够在不同环境中一致运行。 基于微服务的applications比单片或三层应用程序具有许多优势,包括更快的应用程序开发、更好的可扩展性、更高的灵活性和服务可重用性。 

但是,这些组件微服务是从公共云库和其他远程平台中提取的,并通过 API 或其他通信机制进行中继。 这些分散的元素难以管理,并且暴露 API 增加了应用程序的攻击面,为数据传输期间的网络入侵和第三方库中的潜在漏洞打开了大门。 

applications3.0: 分布式应用和人工智能

如今,applications正在经历另一次范式转变。 数据中心消亡的预测被大大夸大了,当今许多组织的投资组合都保留了在混合环境中运行并从内部部署、边缘和云资源中提取的传统和现代应用程序。 这进一步增加了对一致平台的需求,以整合应用程序和 API 的交付和安全性,无论它们位于何处。

此外,应用程序变得越来越复杂,不仅依赖于基于云的微服务,还依赖于实时数据流和新形式的输入。 想想一个典型的旅游网站应用。 除了有关您选择的目的地的诱人照片和内容之外,还有用于预订酒店房间、航班和汽车租赁的实时 API 访问引擎;实时天气预报链接;以及交互式地图功能。 这些现代应用s高度互联、多源且动态,依靠来自混合云和分布式环境的数据来提供强大的客户体验。 

当这些已经高度集成的applications中添加人工智能时,复杂性和攻击面只会增加。 人工智能服务利用来自互联网络和设备的数据,可能包括推荐引擎或聊天机器人;旅游网站可以根据实时用户资料和预测分析推荐个性化的目的地和活动,或提供监控动态定价算法。 

人工智能applications处理大量数据并采用复杂的流量模式,向企业数据存储和人工智能工厂中的人工智能模型发出大量且频繁的请求。 AI工作负载通常部署在分布式基础设施上,包括公共云、边缘设备和混合系统,这使得applications面临数据安全和隐私风险、对AI模型的对抗性攻击以及基础设施漏洞。 这些挑战推动了对富含 API 的applications提供全面安全性的需求,这些应用程序需要与高性能流量管理和应用交付服务相统一,以支持现代 AI 应用程序和工作负载,无论它们部署在何处。   

application演变: 功能增强,复杂性增加

应用s的历史在许多方面就是计算本身的历史,从 20 世纪 40 年代解决基本的数学计算发展到今天由人工智能驱动并由来自众多远程系统的输入驱动的复杂而动态的应用程序。 应用历史还体现在计算硬件日益增强的可访问性和普遍性上。 应用s已经从只有专家才能操作的房间大小的大型计算机转移到个人使用和娱乐的具有图形界面的台式计算机和笔记本电脑,以及由可在任何地方访问并通过触摸屏和语音命令实现的网络和移动应用程序驱动的移动设备。 

然而,这些日益智能和动态的applications所依赖的网络和连接易受各种安全风险的影响,需要不断发展的安全缓解措施和针对分布式环境优化的 ADC。  我们需要融合关键的应用程序交付和安全功能,以便更好地管理在分布式环境中运行的传统应用程序、现代应用程序和人工智能应用程序的新格局。 我们相信 ADC 是解决这一问题的合适技术。 但为了履行这一职责,ADC 需要不断发展,以帮助降低当今脱节的数字生态系统带来的运营复杂性和风险。

要了解更多信息,请阅读我们系列中的上一篇博客文章“重塑 ADC 以满足不断发展的应用基础设施的需求”,此外,请继续关注我们的下一篇博客,了解应用安全性如何随着应用架构的变化而发展,以及为什么这需要 ADC 的新时代。