访问线上CDN是怎么一个流程

2015/09/15 win

记得有一次,我们项目组憋大招,想做一次大推广(据说某日早上会有一个用户使用的小高峰),各项条件都准备好的情况下,发版!推广!然而,第二天早上,推广的URL几率性返回为空,原来是运维做了限制。原因:CDN带宽爆了,运维限制了流量

CDN是啥?

和线上服务器是啥关系? leader说:以后新增加接口需要注意访问量和post数据的字节数,post数据花费的是我手机的流量,和线上服务器又是什么关系呢?

一串串疑问经过网上搜索,整理如下:

  1. CDN就是一堆服务器,有专门的CDN服务商
  2. 公司买CDN服务器用作线上服务器,将后台开发写好的代码部署到CDN上,其中:
    • 由于CDN服务器和用户的终端都需要使用运营商的网络进行通讯(用户终端和CDN是两个终端)
    • 每一个终端上行下行都需要耗费流量。意思是都要给运营商交钱
    • 另外,CDN最主要的功能还是负责布置节点:买大型服务器并决定将服务器放置在哪里。因此,CDN主要消耗在于购买服务器并设置节点+网费。因此我们需要给CDN付钱
  3. 用户访问CDN的过程
    • 一个用户终端处于运营商的网络下(已缴纳网费)——>post本地数据——> CDN(执行代码)
    • 一个 用户终端的客户端进行展现(已缴纳网费)<——返回服务器策略<—— CDN,如下图所示:
      2015-9-16
    • 其中,post数据是从用户终端出去后访问了CDN的服务器,如果字节数太大,同时并发数太大,则有可能导致某一时间的带宽峰值超过上限
    • 同理,如果服务器下发的数据的字节数过大,也会存在同样的问题
  4. 其他点:CDN计费方式分为两种:按带宽(峰值)和流量,另外还有按照请求数,pv来收费的
    • 按带宽:和家里的宽带类似
    • 按流量:目前比较少

###测试注意事项

粗略计算一个接口消耗的流量

  1. 同一点并发的用户数*request的字节数=那个时间点的流量
  2. 同一点并发的用户数*response的字节数=那个时间的流量

Search

    Post Directory