下一代SaaS:规模化、韧性和运营效率

下一代SaaS:规模化、韧性和运营效率

关键字: [Amazon Web Services re:Invent 2024, 亚马逊云科技, Temporal Cloud, Next-Generation Saas, Scale Applications, Build Resilient, Maintain Operational Efficiency, Orchestrating Cells]

导读

多租户SaaS构建者需要应对一系列具有挑战性的扩展、弹性、自动化和运营效率问题。虽然现有工具可以解决一些问题,但现在是时候问“下一步是什么?”在这个面向亚马逊云科技合作伙伴的会议中,我们将概述超越当前界限的新型多租户架构和运营策略。深入了解您需要收集的数据、应该获取的洞察,以及新兴的工具和机制。我们探讨多租户运营的新方法,研究生成式AI如何丰富您对扩展、弹性、隔离和分层策略的视角,这些策略影响着您SaaS业务的运营状况。本次会议专为亚马逊云科技合作伙伴而设。

演讲精华

以下是小编为您整理的本次演讲的精华。

软件即服务(SaaS)的世界正在快速发展,下一代SaaS解决方案将比以往任何时候都更具可扩展性、弹性和运营效率。在亚马逊云科技 re:Invent 2024大会上,亚马逊云科技 SaaS工厂的首席合作伙伴解决方案架构师Bill Tarr和亚马逊云科技2023年全球SaaS能力合作伙伴John Topper(The Scale Factory的创始人)分享了他们对SaaS未来的见解。

Tarr首先承认,随着SaaS应用程序的扩展,复杂性会逐渐增加,在做出决策时需要考虑“复杂性回报”。他强调了当SaaS应用程序达到第10个或第100个客户时所面临的挑战,问题会成倍增加,团队会陷入日常DevOps故事和理解客户体验的泥潭。

John Topper随后介绍了他们合作了几年的客户Automata。Automata的软件平台在一个不同寻常的领域运营,它编排硬件机器人在实验室为租户管理长期运行的实验。可靠性和强大的租户隔离是Automata平台的关键要求。Topper解释说,Automata的平台需要管理这些可能持续数周的实验,硬件实际上位于租户的建筑物内。他强调了高可靠性的需求,因为如果平台不可用,那么运行数周的实验就没有意义了。

Automata采用了基于单元的架构来解决这些挑战。在这种模型中,租户部署在多个隔离的单元上,限制了影响范围,并根据租户需求实现了更好的隔离和资源分配。Topper强调了使控制平面单元感知的重要性,并引入了单元管理和编排服务的概念。这些服务负责以自动化方式创建新单元、供应基础设施、在单元之间重新平衡租户以保持负载平衡,并根据负载动态调整单元大小。Topper指出,如果SaaS业务有客户来去,单元管理编排需要能够在已部署的单元基础设施之间重新平衡和移动租户。

Tarr随后深入探讨了SaaS环境中DevOps的复杂性,强调了管理配置、入职流程、部署管道、租户供应、计量、计费和离职的挑战。他提出了一个假设场景,即一个简单的EKS实现可能涉及多个Terraform脚本、Helm图表和Flux,以使社区资源的状态与配置存储库保持同步。随着租户的加入,需要跟踪的配置和输出数量会迅速增加。Tarr强调,即使在无服务器环境中,开发人员也必须跟踪为每个租户供应的基础设施,如Cognito、API网关、Lambdas、DynamoDB和第三方产品,以及它们各自的配置和层配置。

Topper介绍了另一个客户案例,一家制药企业,具有严格的监管合规性要求(GxP和GAMP)和漫长的用户验收周期。他解释说,这个客户有非常严格的隔离要求,因为关键是不能让一家制药企业的商业敏感数据泄露给另一家。根据GxP和GAMP指南,变更受到谨慎管理,客户的大型制药企业客户有漫长的用户验收周期,称为资格认证。当他们对应用程序进行更改时,这些更改必须提交给客户,客户将部署一个测试团队对应用程序进行资格认证,通过严格的手动和自动化测试过程,确保它仍然满足要求。

Topper指出,随着时间的推移,客户发现了更高的成本效率需求。虽然在向大型制药企业销售时成本并不是一个重大问题,但当他们开始向中端市场销售时,就必须降低每个租户的运营成本,以使定价对较小客户来说更具可持续性。客户的应用程序处理药物安全反馈信息,主要关注点不是可用性,而是一旦提交到系统中,报告的持久性。SLA承诺100%的持久性,确保不会丢失或遗漏有关药物反应的报告。

为了支持租户的多个环境,客户会为每个租户配置一个沙盒环境,用于试用新功能和测试代码;一个UAT(用户验收测试)环境,用于在有新版本需要部署时进行正式的资格认证测试;以及一个生产环境。Topper承认,为每个客户提供多个环境在SaaS世界中并不常见,这增加了成本。

此外,客户有长期运行的应用程序版本,主要功能发布每季度或每年进行一次,除了错误修复之外。这意味着在任何给定时间,不同的租户可能在他们的各种环境中运行应用程序的不同版本,进一步增加了管理和部署过程的复杂性。

Topper解释说,客户最初在内部构建了他们的平台,后来迁移到了云端。为了降低每个租户运行平台的成本,并能够向中端市场销售,他们采用了现代化方法,将应用程序容器化,并将其部署到Amazon Elastic Kubernetes Service (EKS)上。客户利用了开源工具Carpenter,这是Cluster Auto Scaler的替代品,它深入了解亚马逊云科技的定价模型和实例类型。Carpenter允许通过直接调用EKS API进行快速扩展,从而实现基于工作负载变化的自动节点调整大小,并在工作负载缩小时合并节点。

Carpenter对亚马逊云科技平台的了解使其能够选择经过深思熟虑的计算解决方案,优化资源分配和成本效率。它可以在生成新的Kubernetes pod时按需供应新的计算节点,确保pod有足够的资源执行,同时保持所需的租户体验,包括持久性和可用性。随着时间的推移,Carpenter可以根据应用程序定义的调度约束,将节点使用重新分配到当前工作负载的最佳解决方案。

这种方法为客户带来了成本节约和合规性,因为Carpenter可以将不常访问的工作负载(如沙盒环境)调度到较低成本的计算资源(如现货实例)上。对于仅在特定测试窗口期间需要的UAT环境,Carpenter可以在不进行测试活动时将环境缩减为零,进一步降低成本。它还可以在测试人员需要访问时及时扩展UAT环境,避免在非工作时间或周末浪费资源。

Tarr随后讨论了关系数据库中多租户的挑战,如管理不同的隔离模型(隔离实例、每租户模式或租户区分符)、数据分片、备份、恢复、可扩展性和开发人员体验。他强调了诸如Aurora Serverless v2的Data API等创新,它通过将这些问题卸载到数据库引擎上来简化连接池和多租户管理。使用Data API,开发人员不再需要担心管理连接池,而连接池在具有多个租户共享同一计算实例的SaaS解决方案中会变得越来越复杂。

此外,Tarr讨论了Aurora Limitless,它可以跨实例自动化数据分片。Aurora Limitless可以将租户数据映射到正确的分片,确保相关数据位于同一位置,以获得最佳性能和可扩展性。例如,如果SaaS应用程序有一个需要跨不同实例进行分片以获得性能和可扩展性的订单表,Aurora Limitless可以将其与租户数据库配对,并确保租户数据放置在与订单表和其他特定于租户的数据的分片相匹配的正确分片中。

Tarr还强调了使用第三方服务(如NeonDB)的潜力,NeonDB管理Postgres数据库,并提供分支版本、缩减到零和租户数据的时间点恢复等功能。NeonDB还自动化了分片,进一步简化了多租户SaaS应用程序的开发人员体验。

Topper介绍了Honeycomb.io的一个用例,这是一种可观察性工具,利用自然语言处理(NLP)和生成式人工智能来简化新用户的学习曲线,提高价值实现时间。Honeycomb的方法是使用大型语言模型将自然语言查询转换为工具的查询语言,使用户能够以更直观的方式与平台交互。Topper指出,Honeycomb的创新导致39%的免费层用户和89%的企业客户使用了增强的AI功能,提高了工具的留存率和使用率。

Topper描述了一种潜在的未来状态,在这种状态下,Honeycomb可以收集每个租户提出的查询信息,并将它们存储在单独的S3存储桶中,以保持隔离和保护敏感信息。然后,这些查询日志可用于训练大型语言模型(LLM),并创建一个OpenSearch Serverless实例作为知识库。通过利用Amazon Bedrock的知识库功能,LLM可以根据每个租户的使用模式中的上下文数据,生成查询的英语解释。这将使该工具能够提供更加相关和个性化的搜索结果和查询建议,并由每个租户环境中对平台使用的集体知识来增强。

最终,Topper设想了一种“主动性”方法,系统可以学习解决方案随时间的演变以及典型的故障排除过程,从而能够主动识别和调查问题,而无需用户或开发人员的手动干预。

Tarr还提到了使用Temporal Cloud等工具来创建持久工作流的潜力,这些工作流可以随时间维护整个SaaS应用程序的状态,从控制平面到单个租户。这种方法将允许开发人员了解他们的应用程序和租户数据在任何给定时间点的确切状态,就像他们可以使用代码版本控制系统一样。Tarr强调了一个客户用例,其中Andrew是一名解决方案架构师,正在探索使用Temporal Cloud来管理控制平面、管理账户、路由账户和多个单元,利用Temporal workers来部署亚马逊云科技账户、管理路由、创建单元、入职租户并维护其状态。

会议最后,Tarr提到了2024年re:Invent上即将举行的与SaaS相关的会议、研讨会和粉笔讲座,并鼓励与会者通过调查问卷提供反馈,以确保未来有更多SaaS相关内容。

下面是一些演讲现场的精彩瞬间:

描述了SaaS租户生命周期的演变,从入职到持续运营和配置变更,所有这些都被捕获在一个数字孪生体中,作为一个持久的工作流和控制平面。

de58816ec09a0cceec871a54936d35f6.png

亚马逊云科技客户如Red Panda、Atlassian和Stripe已经在使用Temporal构建有趣的解决方案来管理持久工作流并跨应用程序和基础设施维护状态。

0bc32cecebb3a5ccc6395671e161d310.png

强调了现代关系数据库中分片引入的复杂性和挑战,包括查询管理、租户映射、弹性和实例打包。

6e602681bd7b82877ddfa18194e94d05.png

Andy Jassy强调了Aurora Serverless V2与Data API如何简化了SaaS应用程序的连接池和多租户管理,减少了开发人员的复杂性。

c53e3bed3767e8c269e3443764bf56b2.png

设想未来开发人员可以像对待代码一样对待他们的数据和模式,具有版本控制、分支、扩展和时间点恢复功能,实现无缝开发和数据管理。

03a323382c15b6b17c90a423c684bab5.png

演讲者热情邀请观众参加关于SPT、SaaS和RAG的精彩研讨会,承诺深入了解使用知识库构建多租户SaaS应用程序。

1620cad82c790e38c18bce0143a680ea.png

总结

在这个引人入胜的叙述中,我们探索了下一代SaaS的领域,深入研究了塑造其未来的复杂挑战和创新解决方案。故事从承认SaaS应用程序扩展时产生的固有复杂性开始,这需要谨慎考虑设计决策及其对运营效率的影响。

第一个关键点围绕着编排基于单元的架构,这是一个概念,使SaaS提供商能够在不同的部署环境中管理和隔离租户,降低大规模事件的风险,并为每个客户群提供量身定制的体验。这种架构方法引入了新的考虑因素,如自动单元创建、租户重新平衡和动态调整大小,所有这些都由一个强大的控制平面编排。

第二个关键方面探讨了多租户数据管理的演进,特别是在关系数据库的背景下。叙述强调了管理不同隔离模型、分片复杂性以及需要API驱动、开发人员友好体验的挑战。Aurora Serverless、Aurora Limitless和第三方产品NeonDB等创新解决方案被视为潜在的游戏规则改变者,简化了多租户、实现了无缝数据分支,并为数据库管理提供了类似Git的体验。

最后一个关键点深入探讨了生成式人工智能在SaaS应用程序中的变革潜力。故事展示了Honeycomb.io的一个真实案例,利用自然语言处理来简化用户体验,加快客户实现价值的时间。叙述设想了一个未来,多租户SaaS应用程序可以利用人工智能的力量,主动对解决方案进行故障排除和优化,从历史数据中学习,并随着客户需求的变化而发展。

在结尾陈述中,叙述强调了持续探索和采用前沿技术和架构模式,这将塑造下一代SaaS。它鼓励与会者参与re:Invent提供的大量以SaaS为重点的会议、研讨会和资源,培养协作精神,推动行业朝着更大的可扩展性、弹性和运营效率迈进。

亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者。提供200多类广泛而深入的云服务,服务全球245个国家和地区的数百万客户。做为全球生成式AI前行者,亚马逊云科技正在携手广泛的客户和合作伙伴,缔造可见的商业价值 – 汇集全球40余款大模型,亚马逊云科技为10万家全球企业提供AI及机器学习服务,守护3/4中国企业出海。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值