门口的服务器

速度与性能,一直是我们在研究的课题。

因为身处一个距离世界有点距离的地域,在保证网络自由的同时,实现超高速运作,这确实是一个非常严峻的问题。

我们这次新版,已经从原来的单机版,转为分布式的结构。如果要真正意义上的提速,我们需要在世界上多数的物理节点中,增加集群的节点。这太昂贵了,因为集群中对节点的配置要求还不低。

新版,还将主服务器从原来的东京机房迁移到北美。即使,我们做了大量的性能优化,但是省下来的时间,全部让渡给了网络延时。而在亚洲地区,一个国家的国际出口带宽本身是有限的,一旦拥堵,丢包严重;即使美国西海岸与青岛有直连的海底光缆,也无济于事。

用CDN吧!

总是有朋友这样告诉我们,我们也总试图想让他们明白,在这么长时间的研究后,常见的CDN对我们来说,其实是一个非常落后的技术了,它是为所有网站设计的,而不是为一个特殊集群,里面会产生非必要的延时以及资源的空耗,特别,如果网站是纯动态的,以及,这个集群中存在数量超多的站点时。


对节点要求极低的,一个P2P式的CDN结构!
这就是我们的计划。

  • 一个低配的VPS就能胜任节点功能。
  • 通过跟CDN集群完全一致的DNS集群,实现访问者自动进入最快的节点。
  • CDN集群的节点,在处理每次请求的时候,会有跟主服务器一致的预处理,比如session的处理。
  • 每一次命中缓存的请求,CDN节点会与主服务器节点进行单向的UDP通讯;如果有变更,主节点会通知当前承接的CDN节点。
  • UDP通讯中,还会有必要的数据处理,比如网站的访问统计。
  • CDN节点,不是静态的,它会获取嵌入页面的动态变量,结合自身内存数据库,进行独立的进一步渲染。

为什么要做到这个地步?

呃,你能想象有这么一天,你的一个树莓派,就承担了小区里一百个博客、相册么?即使它掉线了,也会有其它的节点自动跟上。

多么美好!当然,在某些地方,阻止这个梦想的,不是技术与思想,而是一些人为因素。

@2014-02-24 00:05
  • Suy2014-02-24 11:46

    不明觉厉~

  • yujiew19892014-03-04 11:14

    这个想法挺好

  • 随望淡思2014-03-06 20:20

    这是一个美好的理想,期待着这一天的到来!

  • cteng2014-12-13 16:43

    虽然不太清楚farbox现在实现的细节,用CDN做分布式P2P缓存,理论上是可行的。但问题是“人为”因素。

    我想象中的P2P内容推送网络是可以根据参与者的兴趣部分缓存的,可以实现为一个专用的浏览器客户端。可以与WiFi Direct、Mesh Network这样的去中心网络对接。

    Tor这些东西只是为了客户端匿名化,其底层还是运行在不可靠的TCP/IP上的。

  • 土木坛子2015-03-13 05:50

    我也一直觉得用不用CDN,本质上差别不大,免费的CDN还不如不用。

  • 费瑟网2015-10-03 08:09

    因为喜欢楼主的模板才来的!学到了很多,p2p&CDN,感觉又回到了以前,以前就是电脑就是服务器,只是没有cdn这项技术

  • junziruogong2016-01-17 02:04

    类似twister的模式?