php 高并发 前端 CDN技术原理及配置
php 高并发 前端 CDN技术原理及配置
CDN技术可以说是一种缓存技术。
我们知道,对于一个已经开发好的网站来说,网页上一些静态资源,比如:图片,视频,css文件等都不会经常改变的。而在加载这些文件时,特别是图片,会耗费
很多带宽资源。特别是较远的距离加载这些数据的时候,最耗时间。
所以,人们想了一种解决办法,那就是在全国各地布置很多服务器,然后,每个服务器复制一份“静态资源”(也就是图片,视频,css文件,js文件等)。
再配置一个“调度服务器”,当用户的电脑要加载资源时,会先访问“调度服务器”,调度服务器会支配一个最近的“缓存服务器(也就是上面提到的装着图片的服务器)”,将静态资源发送到用户的电脑。
当然 其中的请求过程以及调度过程远比我说的要复杂。有兴趣了解原理的可以看这篇文章:http://www.cnblogs.com/flymolgee/articles/4331784.html
我们现在来看看,如何自己配CDN服务器。
一、CDN服务器搭建前准备
1.找一个国内访问速度快的服务器来安装LuManager控制面板,比如你在重启,那么你最好选重庆的服务器。
2.LuManager控制面板支持Nginx、apache,自带了CDN缓存加速,设置简单、功能强大。
3.安装好LuManager之后,登录控制面板,点击“添加网站”,输入你要绑定的域名。
4.然后点击“选填”选项,在创建特殊网站中选择“CDN网站加速”,填入你的源网站域名和源网站IP地址。
5.在下方选择“开启CDN普通缓存”,CDN普通缓存文件默认如下:
html|htm|shtml|shtm|gif|jpg|jpeg|png|bmp|swf|js|css|mp3|mav|doc|dot|xls|pdf|txt|zip|rar|gz|tgz|bz2|tgz|rm|rmvb|ico
4、多个用半角|分隔,如jpg|png|gif等,请不要缓存php|asp|jsp|cgi|aspx等动态网页的内容,留空则使用默认值。
5、文件类型可以用正则进行匹配,如要匹配discuz的附件,可以用php.mod=attachment(由于php?mod=attachment中的?在正则中是特殊符号,需用.)(点击放大)
6、设置好可以到网站管理中看到网站CDN加速已经创建成功了。
三、设置DNS域名解析启用CDN缓存加速访问
1、到域名的DNS管理处,将不同网络的用户设置访问到不同的CDN加速节点上,例如国外和国内用户区分,电信和联通用户区分,还有搜索引擎区分。
2、对于正在使用美国主机的朋友,让用户直接访问国内的CDN缓存加速服务器上,将在很大程度上提升网页的加载速度。这是我将我的Godaddy主机设置到国内的CDN机房中。
四、LuManager CDN加速访问效果
1、从Ping值来看,设置LuManager CDN过后的网站用户访问不再是源站,而CDN节点上。
2、用站长测速工具,用了国内CDN加速的网页加载速度比没有用的提高了一倍。(点击放大)
3、查看LuManager CDN的网站文件管理,发现LuManager CDN已经自动在服务器为源站生成了镜像,CSS、JS、图片、Html等静态文件都已经组成成功。 (点击放大)
五、LuManager CDN高级缓存模式和删除缓存内容
1、如果要开启LuManager CDN高级缓存模式,请在创建CDN加速网站时选择该项。
2、高级缓存可以自由选择网站的索引文件(默认首页),缓存文件在节点服务器上是“乱放”并加密过的,而且经常访问的文件会使用内存缓存,速度飞快。 建议对文件保密性和访问速度要求较高,并且内存充裕的用户选择此方式。
3、要想删除LuManager CDN缓存内容,可以先设置一个密码,也可以不设置。
4、例如部落要删除缓存文件,直接访问该网址:http://10.204.164.9:8888/index.php?m=Public&a=cache_delete&id=2&hash=哈稀值&file=文件名
5、哈稀值的算法:密码的md5值,即md5(password)。如果密码留空,则无需验证密码也可以删除(省略hash参数)
6、文件名:文件名相对网站根目录,以/开头,如要删除网站根目录下的mydir/file文件, 用/mydir/file便可(我们建议将文件名用urlencode进行编码)。如果是“文件+内存”模式,文件名为/lum_high_cache
php 高并发 前端 CDN技术原理及配置相关教程