• 浅谈 CDN 加速


    对一个接口进行优化的方式有很多,这里浅介绍一下 CDN 加速,为读者提供一种新的优化思路。

    何为 CDN ?

            CDN 即 Content Delivery Network 译为 内容分发网络

    字面简单理解就是将同一份资源分发部署到多个服务器上,根据用户的请求来决定分配导向到某台服务器

    为何使用 CDN ?

            现如今许多人仍在使用百度搜索,试想如果百度公司在国内仅有一台服务器承接流量,那么这台服务器存放的位置就至关重要,如果服务器处于北京,那么北京网民发送的请求可以很快到达服务器,网络延迟会很低,但是远在海南的网友可就遭重了,网络请求需要经过“漫长”的时间才能抵达位于北京的服务器,这样上网的体验肯定不会很好。

            在这样的背景下,无论怎样规划服务器选址都无法保证所有用户体验,所以增加服务器数量是唯一解,现在很多大型IT公司都会在全国部署多个节点服务器,采用就近访问分发用户请求来降低延迟。

            但是很多的小中型企业没有充足的预算支持去全国部署服务器,所以这些大型IT公司就提供了一种 CDN 解决方案,它们负责提供全国节点服务器,小中公司只需要购买服务提供资源就可以享受 CDN。

    如何实现 CDN ?

            想要实现 CDN ,必须考虑以下问题:

            1. 需要获取用户的位置信息

            2. 根据用户位置信息分配距离最近的服务器

            

    针对第一个问题,只需要解析用户请求 IP 地址即可

    第二个问题比较复杂,

    当我们访问一个网站时,本质就是将域名通过 DNS 解析到该域名对应的 IP 地址,再通过 Http 请求包将数据发送到这个 IP 地址,DNS 解析可以看作一个 Map 的映射关系,{域名:IP地址} ,通过域名获取对应的 IP 地址,但是仅仅这样是无法实现 CDN 多服务器 IP 地址挑选的,因为正常情况下一个域名对应一个 IP 地址。

    所以我们需要使用各大 CDN 服务提供商的 DNS 解析服务才行,这时候我们就会用到代理域名,例如通过 {代理域名:真正域名}  => {真正域名:IP地址} 起到一个中转代理的作用

    在这个基础上如果想要使用厂商提供的 CDN 服务,只需将真正域名 对应到 厂商提供的DNS服务器域名即可,DNS解析识别到这个域名对应了一个专用的DNS解析服务器,就会自动导向这个服务器, 再经过这个厂商提供专用DNS服务器内部分配到最近的服务器IP地址即可

    {真正域名:厂商代理DNS服务} => {厂商代理DNS服务:距离最近的服务器IP地址}

  • 相关阅读:
    Matlab数学建模常用函数
    LeetCode315 周赛
    javaweb技术栈
    观测云目前支持多少种图表?
    R语言:主成分分析PCA
    (免费领源码)php#Thinkphp#MYSQL校园二手交易app 99211-计算机毕业设计项目选题推荐
    Windows环境编译webots遇到报错:‘gbk‘ codec can‘t decode byte 0x93 in position 547
    实人认证API的出现,让电子化身份验证更加可靠
    【小程序源码】多功能起名查重工具
    两个全景vr网站 比百度要好
  • 原文地址:https://blog.csdn.net/xmbcc777/article/details/138188670