随着API经济的流行,一些受欢迎的API业务的调用者会越来越多,目前API网关上的Provider基本上只是在离其办公地点近的Region部署一套API,比如驻扎在北京的Provider,只是在阿里云的北京Region部署了一套自己的API,而他的海外用户调用这套API在网络上的耗时就会相对比较多。
目前API网关已经在国内外都部署了多个节点,对于海外用户的就近接入的技术方案创造良好的条件。目前API网关在国内的杭州,北京,上海 ,深圳,青岛,五个Region都部署了节点。
API网关在国外的新加坡Region已经部署上线了节点,业务在国外的Provider可以选在使用新加坡的API网关给用户提供服务。API网关的美国Region的部署也已经在部署的计划中,明年大家就能用上了。
下面我们聊一下如何配合智能DNS在API网关上合理地实现API的就近接入。首先我们来看一下就近接入的系统架构图。
我们来总结下这套架构的特点:
1.Provider在国内外都部署一套应用服务,并在API网关将API暴露出来;
2.不同地区的Consumer的客户端通过智能DNS就近接入对应的API网关;
3.Provider的应用服务通过高速通道交互数据。
这套架构让整个数据通道没有瓶颈点,用户和接入层API网关之间非常近,网关和Provider的应用服务、RDS等云存储在同一个Region内,都属于内网通信 ,也会很快。两个Region之间的通信通过阿里云的高速通道来完成,也将得到通信速度的保证。
我们把重点放在前端,具体在阿里云上如何配置才能让Consumer的客户端能够找到离他最近的API网关来接入呢。
下面我总结下配置的步骤给大家参考:
1.Provider在各个Region内的API网关上发布API的时候,会建立API分组来管理这些API,每个分组都会有一个阿里云分配的子二级域名,我们可以在分组的详细信息页看到这个二级域名:
这样我们在每个Region会得到一个二级域名。
2.Provider对Consumer的客户端提供统一的域名,域名为api.abc.com,可以在阿里云的域名解析内这样配置:通过解析线路的不同,将海外解析线路的记录值修改为海外Region的Group的二级域名的值,然后默认的设置为国内Region的值。
Provider设置完成后,一般十分钟后DNS就生效了,国外用户的的请求就都发送到国外的API网关了,国内的请求仍然发送到默认的国内API网关。