背景及应用场景
当前业内的数据服务产品对外提供接口服务时,仅支持以同步形式进行调用,但该方式在一些场景下不能很好的支持使用,而调用方式支持异步则能够覆盖对应场景,并高效、稳定的提供服务:
1、大数据引擎下的数据查询:在对大数据引擎内的数据做查询时,通常会先把数据同步到分析型引擎(OLAP)上再提供API的查询,但会因为数据复制造成计算、存储资源的浪费,同时维护集成任务的代价高。对于查询的性能要求不高的场景下,使用异步调用可以避免数据复制,节省存储和计算资源,节省大量后端研发的工作。
2、复杂SQL以及大规模数据的查询:在OLAP分析引擎下,一般会把复杂的逻辑放在API的逻辑中,而不在应用端进行查询结果的拼接,因此复杂的查询将造成更长的响应时间,可能会导致请求超时,异步调用则能够支持正常调用。
3、大规模数据下载:进行大规模数据下载时,系统负载增加,同步调用会限制系统的并发处理能力,也会影响稳定性和性能,使用异步调用能够在等待数据下载完成时释放资源,提升稳定性。
应用示例
电商或零售业务中,订单量的查询是常见的需求。当数据量庞大时,同步查询可能会导致客户端长时间等待,导致接口超时。现在需要针对一张大数据引擎的订单表对外提供API服务,就可以直接前往数据服务模块,选择对应的订单表,创建异步调用方式的getCustomerOrders()接口,直接对外提供客户订单量查询服务。
功能概览
1、创建异步调用模式的API
2、测试提交发布API
3、申请权限进行调用