用DNSPod和Squid打造自己的CDN全程分享

 更新时间:2013年04月20日 00:15:35   投稿:mdxy-dxy  
本篇教程是顺应大家的要求而写,教程内大部分都是在为VeryCD等大型网站构建CDN时所累积的经验,在一些概念方面可能会有一些错漏,希望大家指正

本教程面对的对象是个人站长,所以各方面会力求傻瓜化,让大家都能看懂。当然,前提是需要你要有一颗好学的心,还有坚韧的毅力。
另外一方面,本篇文章基本不会涉及到Windows的内容,整套系统将会是架构在CentOS Linux 5上。别问我为什么不是Windows,因为Windows只能拿一个字形容:烂。不喜欢Linux,或者认为Linux学习起来有困难的朋友,可以到此打住。
可能有人要问,为什么是Linux,而不是FreeBSD?因为FreeBSD不管从系统的优化配置,还是文件系统的性能,都不合适初学者。
先前说过,本篇文章针对的是没有多少技术基础的个人站长,所以文章内会有Linux的安装、基本操作等一些东西教给你,让你学得简单,时间花得有价值。
再罗嗦一下,在接下来的时间内你将要面对一个黑漆漆的,全是英文的屏幕,请做好心理准备。


注意:本篇教程将*不会*涉及到以下内容:

1.动态内容(比如BBS)
2.大文件(比如软件下载站的软件)

第 1 章 CDN和智能DNS
1.什么是CDN
简单来说,CDN就是能让你的网站访问起来更加快的东西。例如网通用户访问了你在网通的CDN服务器上面某个文件,CDN系统就会判断这个文件是否被请求过,如果被请求过,在没有失效的情况下,就会从系统的缓存里面读取这个文件并返回给用户。如果这个文件没有被请求过,那么CDN会自动从你的主服务器上面获取这个文件,然后缓存到CDN系统内,再给用户返回。
看到这里,聪明的朋友就会问:如果网通的CDN服务器,访问我在电信的主服务器速度很慢,那么是不是用户第一次请求这个文件的时候会很慢?嘿嘿,恭喜你,的确是这样。并且,在文件没有完全缓存到CDN上面的时候,所有访问这个文件的用户都会出现错误,比如网页打开不完整,文件下载到一半等。但只要你的网站访问量足够大,这个影响对用户来说是微不足道的。
然后还有朋友会问,为什么商业的CDN不存在这个问题?因为,商业的CDN有自己租用的线路,自己走路由。这就是商业CDN卖得如此之贵的原因。当然,如何走这个路由,搭建这么一个大型的CDN系统,不在本文的讨论范围以内。

2.什么是智能DNS,什么是DNSPod
智能DNS的原理很简单:在用户解析一个域名的时候,判断一下用户的IP,然后跟DNS服务器内部的IP表匹配一下,看看用户是电信还是网通用户,然后给用户返回对应的IP地址。
DNSPod是同学旗下的网站,提供免费的智能DNS服务。你只需要把你域名的DNS从原来的注册商改为DNSPod,马上就可以享用这个服务了。
注意了:DNSPod只提供域名的智能解析服务,不提供域名也不提供服务器,千万不要以为把你的域名转到DNSPod就能成为双线了。
第 2 章 前期准备

要继续后面的步骤,你必须要准备以下东西:
域名一个
服务器两台,电信网通各一台,一般的P4即可,内存2G以上
空白DVD R+光盘一张(或者CD-R 6张)
DVD刻录机一个(或者CD RW刻录机一个)

然后,你还需要去下载CentOS的ISO镜像
随便在下面的镜像地址挑一个,暂时没有国内的,建议挂一个迅雷慢慢下

http://ftp.ncnu.edu.tw/Linux/CentOS/5.0/isos/i386/
http://ftp.cse.yzu.edu.tw/pub/CentOS/5.0/isos/i386/
http://ftp.cs.pu.edu.tw/Linux/CentOS/5.0/isos/i386/
http://ftp.tcc.edu.tw/Linux/CentOS/5.0/isos/i386/
http://mirror.mirr4u.com/centos/5.0/isos/i386/
http://mirror.tini4u.net/centos/5.0/isos/i386/
http://mirror.averse.net/centos/5.0/isos/i386/

打开上面的网址后,你可以发现类似下面的文件名
CentOS-5.0-i386-bin-1of6.iso

CentOS-5.0-i386-bin-6of6.iso
这些是CD镜像,一共有6个,下载刻盘比较浪费资源,所以我建议下载下面这个DVD镜像
CentOS-5.0-i386-bin-DVD.iso
废话不多说,下载回来后刻盘即可。

之后,为资源做一个安排,所以下面将会做一个假设:
假设域名为naizhao.com
假设两台服务器,电信的服务器为A,网通的服务器为B
假设A服务器为内容服务器,B服务器为CDN服务器,B服务器所有需要的内容均从A服务器取得
假设A服务器的IP是1.1.1.1,B服务器的IP是2.2.2.2

OK,到这里后我们所需要的东西基本准备好了。ISO可能还没有下载好,不急,慢慢挂着,我们先来把域名的DNS设置好

(未完,待续)

相关文章

  • Linux环境部署DNF仓库以及配置NFS共享服务

    Linux环境部署DNF仓库以及配置NFS共享服务

    本文详细介绍了如何在Linux环境下部署DNF仓库和配置NFS共享服务,DNF仓库主要用于集中管理软件包,而NFS共享服务则用于多系统间的文件共享,文章涵盖了从仓库部署、软件包同步到NFS配置和客户端访问的全过程,为系统管理员提供了全面的指导
    2025-04-04
  • CentOS7连接XShell与网络配置的方法

    CentOS7连接XShell与网络配置的方法

    这篇文章主要介绍了如何使用CentOS7连接XShell与网络配置的方法,可以更好的帮助大家工作和学习,感兴趣的小伙伴可以了解下
    2020-05-05
  • apache下支持asp.net的实现方法

    apache下支持asp.net的实现方法

    让apache支持asp.net的设置步骤。
    2009-12-12
  • Linux CentOS7 用户组管理方式

    Linux CentOS7 用户组管理方式

    这篇文章主要介绍了Linux CentOS7 用户组管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • Linux中服务器软件为什么需要编译安装

    Linux中服务器软件为什么需要编译安装

    这篇文章主要介绍了Linux中服务器软件为什么需要编译安装,在什么情况下需要编译安装,需要的朋友可以参考下
    2014-02-02
  • CentOS(Linux)下的apache服务器配置与管理方法分享

    CentOS(Linux)下的apache服务器配置与管理方法分享

    CentOS(Linux)下的apache服务器配置与管理方法分享,需要的朋友可以参考下。
    2011-04-04
  • 在Linux系统中查找最大的文件的命令详解

    在Linux系统中查找最大的文件的命令详解

    在 Linux 系统中,管理磁盘空间是一项重要的任务,尤其是在长期使用的系统中,为了有效地管理磁盘空间,找到并处理这些大文件变得尤为重要,所以本文给大家介绍了在Linux系统中查找最大的文件的命令方法,需要的朋友可以参考下
    2024-11-11
  • 在Linux系统中查看目录大小的方法小结

    在Linux系统中查看目录大小的方法小结

    在 Linux 系统中,管理文件和目录的磁盘空间使用情况是日常维护的一部分,特别是在数据密集型的应用场景中,了解各个目录和文件的大小至关重要,du(disk usage)命令是一个强大的工具,可以帮助我们获取目录及其子目录的大小信息,需要的朋友可以参考下
    2024-11-11
  • Linux服务器tomact 8.0启动慢的完美解决方法

    Linux服务器tomact 8.0启动慢的完美解决方法

    这篇文章主要介绍了Linux服务器tomact 8.0启动慢的完美解决方法,需要的朋友可以参考下
    2017-08-08
  • apache虚拟主机的配置指南

    apache虚拟主机的配置指南

    本文介绍了apache虚拟主机的配置的方法,要配置apache的虚拟主机,我们需要分以下几步进行:检查apache虚拟主机模块,开启apache虚拟主机功能,httpd-vhosts.conf文件详解,根据IP配置虚拟主机,根据端口配置虚拟主机,根据域名配置虚拟主机,有需要的小伙伴参考下
    2015-01-01

最新评论