什么是Faststatic
Faststatic简单地说是一个主要面向中国大陆境内用户并兼顾海外用户的快速FOSS前端缓存库,并采用多家云服务商与自有CDN节点进行内容分发。主要包括的库资源有:
- CSS
- JavaScript
- 字体 (Font)
- 头像 (Gravatar)
Logo
https://qiniu.cdn.faststatic.com/FastStatic_Logo_Only_Transparent.png
https://qiniu.cdn.faststatic.com/FastStatic_On_Transparent.png
为什么做?
- 中国大陆当前前端库对于很多前沿功能不支持。
- 对于开发者来说,直接使用NPM搭建前端库路径复杂不方便快速切换版本,占用过多空间。
- 中国大陆当前前端库版本不齐全缺乏维护。
- 目测没有人之前在中国大陆搭建过双栈的库缓存服务
- 目测没有人之前在中国大陆搭建过支持Google Brotli压缩算法的库缓存服务
支持哪些技术?
- IPv4 + IPv6
- HTTP + HTTPS
- HTTP/{2.0 | 1.1 | 1.0}
- SPDY
- Gzip + Brotli
- HTTPSDNS 调度
- Google TCP-BBR拥塞控制算法
服务器架构
x86 + ARMv8
优势
- 传输更安全
- 传输更快
- IPv4 + IPv6 双栈运行
- 3 + 1 冗余CDN内容分发网络
- 地域性DNS配合HTTPS精准调度至最优节点
- 支持Web API操作
- 提供Windows/Mac/Linux CLI
实现方法
- (通过cdnjs/jsdelivr的API获取库名称后再)通过NPM将库的所有版本下载至本地。
- 通过package.json获取mainfile路径。
- 将mainfile路径中所有文件复制到‘/libs/$libname/$version/’目录下。
- 通过NPM view获取库相关信息并存入数据库。
- 将‘/libs/$libname/$version/‘上传至云存储并同步至内容分发网络
服务架构
主编程语言
Python3
文件目录管理
Python3 + Bash
API
Python3 + Flask 框架
数据库
Redis
网站
Hexo
(HTTPSDNS)
Python3
(数据分析)
TensorFlow /NumPy
CDN网络
功能比较
CDN服务商列表及支持的功能表格如下:
CDN服务商 | IPv6 | HTTP/2.0 | HTTPS | SPDY | Gzip | Brotli | TCP-BBR |
---|---|---|---|---|---|---|---|
中国大陆 | |||||||
阿里云 | F | T | T | T | T | F | - |
Ucloud | F | F | T | T | T | F | - |
又拍云 | F | T | T | T | T | F | - |
海外及港澳台地区 | |||||||
BelugaCDN | T | T | T | T | T | F | - |
GoogleCDN | T | T | T | T | T | T | - |
全球 | |||||||
自有节点 | T | T | T | T | T | T | T |
节点分布
** Ucloud **
node.png
** Aliyun **
domain_node.png
** UPyun **
截至 2016 年 10 月,又拍云国内 CDN 节点数达到 150 多个,覆盖 26 个省份,10 多个运营商,带宽总量超过 1.5TB。
节点质量
CDN服务商名称 | 总带宽 | 节点数 |
---|---|---|
中国大陆 | ||
阿里云 | 40Tbps | 700+ |
Ucloud | 6.5Tbps | 500+ |
又拍云 | 1.5Tbps | 150+ |
海外及港澳台地区 | ||
Google* | - | - |
Beluga CDN* | - | - |
全球 | ||
自建CDN | 3Mbps(国内)+ 3Gbps (海外及港澳台) | 3 + 4 |
\* Google 网络地图参见 https://peering.google.com/#/infrastructure
\* Beluga CDN 网络地图参见 https://www.belugacdn.com/map.pdf
网友评论