针对以上问题,为进一步提升用户的访问体验,SuperMap将CDN与GIS业务领域特点相联合,提出了实用于GIS的CDN——Geo-CDN。
利用Geo-CDN后,GIS服务器将不再直接响应客户端恳求,而是由各边沿节点即缓存服务器,以代理发布的方法对服务进行分发,并最终供给给终端用户。为了安排方便,通常应用DNS服务器作为全局负载均衡设备。例如应用BIND这一开源DNS服务器软件。
Geo-CDN的系统不仅可以通过IP断定哪一台缓存服务器距离用户最近。还可以根据恳求来断定哪一台缓存服务器上具有用户所需的内容,便由该服务器响利用户恳求。因此即使在B地查看关于A地的内容,也能快速得到响应。
另一方面,Geo-CDN对于瓦片的分发是以瓦片包的情势进行的,而非逐张分发,大大降低了资源管理的难度。不仅最惯例的地图瓦片,矢量瓦片、属性瓦片包都可以进行分发。
Geo-CDN的根本作用在于提升终端用户的访问体验,具体体现则是引入Geo-CDN后改良了GIS系统处理用户恳求的方法。
具体来说,引入Geo-CDN前,用户点击网站页面上的内容URL后,首先由网站的DNS对域名进行解析,解析的成果为GIS服务器的IP地址,客户端就会直接向GIS服务器发送恳求。
引入Geo-CDN后,服务访问的效率提升了,但用户并不会感到到CDN的存在。图 5展现了引入Geo-CDN系统后用户的访问流程。其中应用了BIND作为Geo-CDN的DNS,并在各地安排了缓存服务器。
(1)用户向网站的DNS进行发起域名解析。
(2)网站DNS服务器中会有一条CNAME记载,唆使将域名解析权交给Geo-CDN专用DNS服务器。
(3)Geo-CDN专用DNS服务器对该域名进行解析,并选择一台最优的缓存服务器,将其IP返回给用户。
(4)-(5)用户向最优服务器发送恳求,服务器响应恳求,将用户所需内容发送给用户。
如果某区域的用户访问量太大,单台缓存设备在处理沉重的内容分发任务时会涌现严重的性能瓶颈。这时,就需要在此区域安排多台缓存设备,以及本地负载均衡设备如Nginx。
CDN(内容分发网络)被用来解决由于网络带宽不足、物理距离遥远等因素引起的网站访问质量降落的问题。为懂得决类似的状态,GIS行业中也引入了CDN,并在互联网地图中广泛应用。但通用的CDN存在安排复杂、瓦片分发不统一等问题,因此SuperMap提出了Geo-CDN,为用户构建行业利用系统供给更高效的方法