产品展示

ITS采用微服务架构来改善航空旅行搜索引擎 架构博客

2026-01-27 12:05:17
9次

ITS引入微服务架构提升航空旅行搜索引擎

由Sushmitha Sekuboyina、Asha Bhosale、Barti Somaasundaram及Steve Edgerton撰写于2023年10月11日发布在Amazon CloudWatch,Amazon DynamoDB,Amazon Elastic Container Service,Amazon ElastiCache,Amazon RDS,Architecture ,AWS Fargate,AWS Lambda 和 AWS Systems Manager永久链接 分享

关键要点

ITS互联网旅游解决方案有限公司使用微服务架构来改造其航空旅行搜索引擎,以提高市场响应速度、业务灵活性和性能。架构改造的目标包括将搜索组件拆分为逻辑模块、减轻数据库负载并将应用逻辑处理时间降低到3秒以内。结果显著: 采用新架构后,搜索航班的平均运行时间缩短了72,体现了显著的性能提升。

互联网旅游解决方案有限公司ITS是一家为企业、商业及货运领域开发和维护智能产品与服务的旅游管理公司。ITS旨在简化全球各类公司无论大小的旅行预订流程,并提供一个直观的消费网站,整合旅行与费用的视图。

多年来,ITS一直使用单体架构来托管其旅行应用。随着需求的增长,这些应用变得越来越复杂,难以扩展,同时随着时间推移,更新变得更加困难,导致部署周期放慢。

在这篇博客文章中,我们将探讨ITS如何通过现代化其航空旅行搜索引擎来提高市场响应速度、业务灵活性和性能。我们会展示他们如何将单体应用重构为微服务,使用Amazon Elastic Container Service (ECS)、Amazon ElastiCache (Redis OSS)和AWS Systems Manager等服务。

ios苹果加速器

基于微服务的航空旅行搜索引擎构建

当客户在消费网站访问搜索小部件时,他们通常会选择出发地、目的地和旅行日期。符合这些搜索条件的航班信息会被展示。数据从后端数据库中检索,并对全球分发系统及外部合作伙伴的API进行多次调用,通常需要1015秒。随后,ITS使用专有逻辑和商业政策来筛选用户的最佳结果。现有的单体系统适用于正常工作负载,但当并发用户请求数量增加时,应用整体性能下降。

为了提升用户体验,显著加快搜索速度,以及进一步推进ITS的现代化计划,ITS决定将其航空旅行应用重构为微服务。重构应用的主要目标有:

将搜索组件拆分为逻辑单元通过内存存储减轻数据库负载,处理临时请求将ITS的应用逻辑处理时间减少到3秒以内

方案概述

首先,我们将航空旅行搜索引擎拆分为微服务例如搜索、列表、价格图等。接下来,我们将应用容器化,以利用Amazon Fargate,一个AWS ECS上的无服务器计算选项,简化和优化系统利用率。

每次搜索调用都会处理来自不同数据存储的3060 MB数据,格式各异。我们采用新的JSON数据格式以简化多种数据格式,并将这些数据存储在Amazon ElastiCache (Redis OSS)中,一个提供亚毫秒延迟和数据结构灵活性的内存数据存储。而且,我们的航空旅行搜索应用使用的一些静态数据则移至Amazon DynamoDB以实现更快的检索速度。

ITS的现代化架构带来了超出降低运营支出OpEx的多重好处。其中一些优点包括:

灵活性。 这种架构简化了各个组件的开发、测试和部署,促进了快速迭代,缩短了市场响应时间TTM。可扩展性。 AWS Fargate的托管扩展功能使得我们在设置容量提供者时无需担心集群自动扩展。Amazon ECS主动监控任务生命周期和健康状态,响应崩溃或冻结等意外事件,通过必要时初始化任务以满足我们的服务需求。这种能力增强了资源利用率,确保了业务连续性,并降低了总体拥有成本TCO,使应用所有者能够专注于业务需求。性能提升。 将Amazon ElastiCache (Redis OSS)与AWS Fargate上的Amazon ECS集成,以缓存频繁访问的数据,显著提高了搜索响应时间,降低了后端服务的负载。集中式配置管理。 通过集成AWS Systems Manager Parameter Store,将配置参数如数据库连接字符串和环境变量从应用代码中解耦,进一步增强了任务间的一致性。

成果及指标

ITS设计了该架构,并将在其生产环境中进行了测试和实施。ITS基于各种因素对该解决方案与其单体应用进行了为期四个月的基准测试,发现航空旅行搜索速度和整体性能均有显著改善。以下是结果:

单用户非云空中列表页面往返RT云空中列表页面RT腿 1腿 2腿 1测试 129秒17秒测试 224秒11秒测试 324秒12秒

在旧系统中,搜索往返航班的耗时平均为27秒第一腿和12秒返回腿;而在新系统中,平均时间分别为12秒和13秒,这实现了72的综合改善。

请注意,该时间包含了我们与外部供应商的调用至返回库存的旅行时间,该时间通常在6至17秒之间,具体取决于第三方系统的性能。新系统在第二腿的表现显著更快12秒,这是因为搜索结果是直接从Amazon ElastiCache (Redis OSS)内存数据存储中提供的,而不是查询后端数据库,这减轻了数据库的负载,从而使其能够高效处理更复杂和资源密集型的操作。

表2显示了耐久性测试的结果:

耐久性测试云空中列表页面RT腿 1腿 250用户,10分钟1401秒100用户,15分钟1447秒

表3展示了突发测试的结果:

突发测试云空中列表页面RT腿 1腿 210用户1234秒20用户1197秒30用户15秒

结论

在这篇博客文章中,我们探讨了互联网旅游解决方案有限公司ITS如何利用Amazon ECS在AWS Fargate、Amazon ElastiCache (Redis OSS)及其他服务来容器化微服务,降低成本并提升应用性能,从而显著改善搜索结果的速度。ITS克服了众多技术复杂性和设计考虑,实现了航空旅行搜索引擎的现代化。

如欲了解更多关于将单体应用重构为微服务的信息,请访问分解单体应用成微服务。如果您对了解AWS Fargate上的Amazon ECS感兴趣,请访问开始使用AWS Fargate。

作者介绍:

Sushmitha SekuboyinaSushmitha Sekuboyina是一名位于奥斯丁的AWS解决方案架构师,专注于AWS安全和网络服务。她热衷于帮助客户构建安全、可靠且具有成本效益的AWS云解决方案。

ITS采用微服务架构来改善航空旅行搜索引擎 架构博客

Asha BhosaleAsha Bhosale是ITS的解决方案架构师,负责为复杂的业务需求设计安全、可扩展且具有成本效益的解决方案。Asha专注于通过容器化和云原生解决方案现代化单体应用,着眼于性能、可扩展性和韧性。

Barti SomaasundaramBarti Somaasundaram是ITS的工程副总裁,领导ITS的软件开发工作。他负责ITS开发和技术现代化的各个方面,拥有构建高交易量网络应用的经验。

Steve EdgertonSteve是ITS的首席技术官,负责ITS的技术组合,包括应用开发、DevOps和企业系统。

全国咨询热线

13594780017

轻云加速器【官网入口】|轻云加速器

联系电话:13594780017

联系人:李总

邮箱:ascorbic@icloud.com

公司地址:芜湖市闪欲峡谷14号


微信扫一扫

手机官网