CDN的透明传输是如何传输数据的?
在Ucloud官方文档看到CDN对动态内容处理的说明:
PHP等动态的网站可以缓存么?
不可以,只能透传。因为动态的一般需要读取数据库,所以不能做缓存。
我并不明白很透明传输的传送过程,用户的请求到底是发到CDN还是源站,用户到底是从CDN还是从源站得到内容?或者举点具体的场景例子:
- 当被DDOS发包攻击的时候,到底是拼CDN的in带宽,还是拼源站的in带宽?
- 当被CC刷流量时,到底是消耗CDN的out流量,还是源站的out流量?
- 源站传送数据时,会不会经过CDN的节点;源站与用户链接不佳时,比如南北互通是否失效?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
基于你的问题设定:DN是对静态文件缓存(CSS,IMG,JS)
1. DDOC由CDN承受,这是根据域名,如果是直接针对源站IP,就是自己承受。
2.请求A网页,静态文件CDN承受,其他由源站承受
3.不会,直接提供给用户; CDN这层会失效,南北互通也就不存在。
这里所说的透传应该只是一个反向代理而已,请求都会到达源站。
这个官方的回答有问题
1) http cache是http协议的事儿,它并不认识php或者所谓的“动态页面”,它只认识头,给合适的http头,就肯定缓存。
2) 用户请求当然是先到cdn的服务器上,这也是你的域名要CNAME到cdn的域名的原因,是cdn决定是否从你的站点抓新数据,还是直接从cache里抓数据给客户。
3) 做了cdn后,你的站点和客户的所有通讯,都会进过cdn,这估计就是他所说的“透传”