ISOS 使用 Hasura 实现现代化 API 架构|提升开发效率与用户体验

作者:API传播员 · 2025-10-08 · 阅读时间:7分钟
  • API开发工作量减少了40%
  • 长期维护成本降低30-35%
  • 为300多万人提供增强的用户体验

国际SOS(ISOS)成立于1985年,是旅行风险管理和安全服务领域的全球领导者,为85%的财富500强企业提供服务。近年来,ISOS通过扩展其数字产品,为全球企业旅行者提供实时协助和监控服务,甚至在高风险情况下提供现场支持。

国际旅行通常伴随着各种风险,例如前往危险地区、应对突发健康危机、政治不稳定或自然灾害。ISOS通过其服务帮助企业在员工的整个旅行过程中做好准备、预防和管理风险——从旅行预订到安全返回。

ISOS每天处理数百万条旅行者记录和行程。然而,其传统的API架构存在诸多限制,无法在一次API调用中从不同数据库获取数据。这种架构需要开发多个流程和体验驱动的API,不仅增加了应用程序的性能瓶颈,还导致技术债务的不断累积和功能开发速度的减缓。为了解决这些问题,ISOS开始探索构建现代化API的新方法。


挑战:对现代API方法的需求

ISOS的工程总监Nitendra Raghuwanshi带领团队开发并维护两种主要的数字产品,这些产品占其业务部门60-70%的数字化转型成果。

  • 面向旅行者的应用程序:提供高风险目的地建议、实时紧急警报以及全天候援助服务。
  • 组织跟踪平台:帮助企业监控出国员工的行程。

ISOS的原始架构基于复杂的.NET REST API体系,按照业务领域(如旅行者、行程等)组织数据。由于大多数前端应用需要跨多个领域的数据,其API架构分为域API、流程API和体验API三个层次。然而,这种方法在以下几个方面表现出明显的扩展性问题:

  1. 开发效率低下:所有API均需手动编码,开发和扩展过程缓慢且缺乏一致性。
  2. 技术债务累积:传统的API集成解决方案需要将域API聚合到流程API中,这一过程冗长且重复。
  3. 性能瓶颈API网关产品在扩展时遇到性能障碍,频繁需要干预和修复。

为了解决这些问题,Raghuwanshi和团队启动了一个重新平台化的项目,旨在优化API架构提升整体效率


解决方案:与Hasura一起加快开发并提高性能

为满足灵活跨域组合的需求,ISOS选择采用GraphQL技术。然而,由于需要在三个月内交付200多个API,他们放弃了传统的基于解析器的GraphQL解决方案(如Apollo和AWS AppSync),转而选择了Hasura。

Hasura凭借其低代码、无解析器的开发模式,以及对开发人员效率的关注,迅速成为ISOS的首选。工程主管Bharadwaj Kunapuli表示:“团队中只有一两个人了解GraphQL,传统GraphQL开发的学习曲线较高。而Hasura的优势在于,它减少了编写解析器的负担。”

在正式采用Hasura之前,ISOS对其进行了严格的供应商风险评估(VRA),包括外部信息安全团队的审查。Raghuwanshi强调:“我们处理大量敏感的客户数据,因此确保数据的安全性至关重要。”Hasura通过了这一严格的评估,并在后续的技术评估中表现出色,最终被选为ISOS的核心API解决方案。


克服API复杂性,实现高效数据处理

Hasura显著简化了ISOS的多层API架构。ISOS的域数据分布在SQL Server、PostgreSQL和Amazon Redshift等遗留数据库和云数据库中。通过Hasura,ISOS能够在所有领域数据上构建一个可组合的GraphQL API,完全消除了过去需要构建多个体验和流程API的需求。

Raghuwanshi指出:“我们已经从需要调用三个API,转变为只需调用一个API。”这一变化减少了后端调用次数,提升了性能,查询效率在许多情况下提高了40%以上。他还补充道:“我们的产品通常需要跨域数据的支持,而Hasura在这方面表现出色,这也是我们从中获得巨大价值的原因。”

此外,Hasura直观的界面和强大的操作与权限管理功能,使开发团队能够独立创建API,从而减少了开发瓶颈并缩短了API交付时间。


提高开发效率与成本效益

Hasura的引入显著提升了开发效率和成本效益。根据Raghuwanshi的说法,Hasura使单个工程师的开发工作量减少了40%,长期维护成本降低了30-35%。此外,Hasura的安全功能使ISOS能够根据严格的标准管理权限并优化数据安全。

Hasura的其他功能(如通过查询调用HTTP REST端点的操作,以及将数据作为具有本机查询的视图使用的能力)也为ISOS的API开发流程增加了重要价值。


宝贵的合作伙伴关系

除了技术上的成功,Raghuwanshi还高度评价了与Hasura团队的合作。他提到:“Hasura团队对我们的反馈和需求反应迅速。例如,当我们需要支持Redshift时,Hasura团队按时交付了这一功能。”此外,Hasura团队还解决了ISOS在过滤功能上的关键问题,确保了持续的反馈和改进循环。

总体而言,ISOS团队对Hasura的功能透明度和客户支持团队的专业性印象深刻。


为数百万用户扩展服务

目前,Hasura的API为ISOS的订阅和管理产品提供支持,每月管理32000个数据源中数百万条乘客姓名记录(PNR)。Hasura的高性能和开箱即用的功能组合,使其成为ISOS扩展服务的核心工具。

ISOS的移动应用程序在iOS平台上的下载量已达1300万,活跃用户数以百万计。考虑到其处理的请求往往具有紧迫性,平台的性能显得尤为重要。Raghuwanshi表示:“数百万人正在查看Hasura查询的结果,其性能表现一直非常出色。”

展望未来,ISOS计划将Hasura整合到所有新产品中,包括一个新的管理控制台,以进一步提升员工旅行体验的管理能力。

通过采用Hasura,ISOS不仅提升了数字服务的质量和性能,还为更好地服务客户和实现其拯救生命的使命奠定了基础。

Raghuwanshi总结道:“Hasura是一款真正简化后端API开发的SaaS产品。它抽象了后端复杂性,让我们能够专注于业务逻辑,并以直观的方式处理技术挑战。”

原文链接: https://hasura.io/blog/modernizing-api-architecture-isoss-journey-with-hasura