文档库 最新最全的文档下载
当前位置:文档库 › 用Oracle Web Cache实现网站镜像

用Oracle Web Cache实现网站镜像

用Oracle Web Cache实现网站镜像
用Oracle Web Cache实现网站镜像

用Oracle Web Cache实现网站镜像

Web Cache是Oracle应用服务器的一个组件,起着HTTP高速缓存和负载均衡的作用。利用其HTTP高速缓存的功能,可以在HTTP层面上实现网站的异地镜像缓存。虽然它实现的镜像并非传统意义上的完全镜像,而更像一个具有高速缓存机制和压缩传输的代理服务器,但是,它的实现比较简单,且通过ESI技术和缓存策略定制,能够大大减轻原有服务器的负载和网络流量,提高其可用性。

Web Cache高速缓存的原理是:读取源服务器的网页,将它存储在本地缓存,并且通过定制的策略进行压缩和有效期管理。客户访问Web Cache服务器时,访问的是缓存中的网页,并非源服务器的页面,从而达到减轻源服务器负载的目的。

Web Cache对静态内容的缓存有很强效果,如HTML文件、各种图片、多媒体文件等等。这些内容一般都不大会改变,完全可以缓存在Web Cache中,降低源服务器的负载。通过定制的缓存策略,静态内容可以在可接受的时间内和源服务器保持同步。

动态内容,如PHP、JSP页面,一般具有实时性,若完全缓存在Web Cache中,显然会造成页面内容的不同步。对于动态内容,需要根据具体情况定制缓存策略,来实现高速缓存功能。比如,不缓存动态页面,但进行压缩传输,减少网络流量。另外,可以通过ESI技术,实现动态内容的缓存。简单来讲,ESI技术是通过页面内嵌标记,指明哪些部分可以缓存,哪些部分必须刷新,以及如何刷新。

总之,用Web Cache实现网站镜像,其缓存效率完全取决于定制策略的效率。好的定制策略是成功的保证,而低效的定制策略,会使Web Cache毫无用途,完全浪费资源。Web Cache有几条初始的定制策略,一般使用,已经足够了。

下面是配置Web Cache,实现网站镜像的简介。

1。平台:Windows 2000 Server中文版。

软件:Oracle 10gAS core版本。其中包含HTTP Server, OC4J(J2EE), Web Cache。具体安装过程可参考其它资料。

若采用其它操作系统或其它版本的Oracle 10gAS,后续操作相同。

2。安装好Oracle 10gAS,打开Enterprise Manager 10g。

浏览器中输入http://167.92.234.254:1810,167.92.234.254是我的测试IP,请用自己的IP替换,后同。注意端口号一般是1810,此端口在安装时指定,各人可不同,请输入自己的管理端口。

输入用户名:ias_admin,密码为安装时设定的ias_admin密码。

进入EM。

可以看到安装了4个组件,分别是:HOME(OC4J的主目录),HTTP Server(Oracle的HTTP Server,

其实就是Apache),Web Cache(本次主角),管理(EM的配置介绍)。

注意每个组件的状态(组件表格第三栏),若没启动,选择第一栏的多选框,点击“启动”,把它启动起来。

3。依次点击进入“HTTP Server”-”管理”-“服务器属性”页面,在“监听地址和端口”段中,确认没有监听“80”端口,若有的话,将其删除。“80”端口将被分配给Web Cache使用。如下图:

4。回到EM首页,点击Web Cache,进入Web Cache主控界面。

这里是Web Cache在EM中的控制页面,可以做简单操作,显示一些实时状态。但是我们要更深入的配置,就需要进入Web Cache自己的管理界面。

5。打开浏览器,输入http://167.92.234.254:4000。注意,4000是Web Cache默认管理端口,可以在EM首页的“端口”链接中找到,如下图。

6。进入Web Cache欢迎页面,如下图。可看到Web Cache的介绍和ESI例子。

点击右面的“Web Cache Manager”,登录进入管理页面。

需要输入管理员用户名和口令。

管理员用户名:administrator

口令:初始口令和ias_admin相同。注意:在Oracle9iAS,初始口令为administrator。

登录Web Cache Manager.

Web Cache ManagerWeb Cache Manager分3块内容:上面是页眉,有“应用修改”和“取消修改”2个按钮。左面是项目栏,放置各选项导航栏目。右面是内容区,用于显示和修改各选项。

7。要使Web Cache成为另外一个网站的镜像,需要以下几步操作:定义侦听端口,定义源服务器,定义

目标服务器(镜像服务器),定义源服务器和目标服务器的映射,设定定制策略。

8。定义侦听端口。

在导航栏中找到“Ports”-“Listen Ports”,点击链接,出现侦听端口选项。侦听端口即Web Cache服务器的HTTP端口,初始值为“7777”,一般应设为“80”。

选中其单选按钮,点击“Edit Selected”按钮。按以下设定修改,完毕按“Submit”确认修改。

若使用SSL,端口号可设为“443”,Protocol为“HTTPS”,“Wallet”为域名SSL证书所在目录。

9。定义源服务器。

在导航栏中找到“Origin Servers, Sites, and Load Balancing”-“Origin Servers”,点击链接,出现源服务器选项。

初始值为Web Cache Server自己,做镜像的话,把它改为需要镜像的源服务器。我用上海热线做测试(https://www.wendangku.net/doc/c811378799.html,)。

注:原先我准备用https://www.wendangku.net/doc/c811378799.html,做测试,但ITPUB服务器做过限制,必须通过https://www.wendangku.net/doc/c811378799.html,的域名才能访问其内容,因此改为其它网站。各位可根据情况选择自己的源服务器。可以是内网服务器,域名用IP地址替换。

修改“Application Web Servers”的默认项,把它按如下所示修改,完毕按“Submit”确认。

“Proxy Servers”段为定义代理服务器,暂不使用。

具体选项含义,可参考Web Cache有关资料。

10。定义目标服务器(镜像服务器)

在导航栏中找到“Origin Servers, Sites, and Load Balancing”-“Site Definitions”,点击链接,出现目标服务器选项。目标服务器即Web Cache本身,无需多言。同时,这里也有定义Web Cache集群的选项,暂不讨论。

选择“Site”的默认选项,按如下修改,完毕按“Submit”确认。

11。定义源服务器和目标服务器的映射

在导航栏中找到“Origin Servers, Sites, and Load Balancing”-“Site-to-Server Mapping”,点击链接,出现映射选项。源服务器和目标服务器之间需要做映射,说明其关系。也就是说,告诉Web Cache谁缓存谁,谁镜像谁。我是把我的Web Cache服务器镜像上海热线,如下所示:

选择第一个选项,修改如下:

依次修改后2个选项,使源服务器和目标服务器与设定相符。

12。设定定制策略

在导航栏中找到“Rules for Caching, Personalization, and Compression”-“Caching, Personalization, and Compression Rules”,点击链接,出现策略定制选项。

缓存策略分2类,一类是针对特定源服务器的,另一类是针对所有源服务器的。这种区分具有较大灵活性,可更具不同源服务器指定不同缓存策略。Web Cache已内置一些常用的缓存策略,如缓存且压缩传输HTML文件,缓存但不压缩传输图片文件,等等。注意,Web Cache未制定针对HTM后缀名的文件,我们需要手工设定。

选择“\.html?$”策略,按“Insert Above”按钮:

按以上设定输入:

URL Expression:\.htm?$。这是正则表达式,意思为所有HTM后缀名的文件。Cache Policy:Cache。当然要缓存了。

Compression:For all browsers。压缩一下更好,节省传输流量。

添加后如图所示:

13。按页眉上的“Apply Changes”按钮,确认所有修改,自动回到“Cache Operations”页面。

按“Restart”按钮,重启Web Cache。

重启OK。

14。打开一新浏览器,输入你的Web Cache服务器的地址,出现上海热线内容,说明镜像成功。注意,浏览器地址为Web Cache服务器的地址。

15。运行一段时间后,在管理器“Monitoring”中,可以看到Web Cache的缓存状态,包括缓存大小,缓存内容等等,具体信息可自行查看。

总的来说用Web Cache做镜像,是一个伪镜像的过程。各位可以通过这个过程理解和学习Web Cache的工作原理以及管理手段。具体的策略定制会极大的影响到缓存的效率,显然需要针对不同网站客户化定制。本文给出一个简单的范例运用,只起一个抛砖引玉的作用,以此吸引大家对Web Cache的兴趣,从而推广Oracle应用服务器的应用。

相关文档