`
frank1998819
  • 浏览: 764408 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类

网页缓存技术 ESI(转)

 
阅读更多

平常我们谈到网络缓存技术,大多是以页面为单位的,比如,新闻网站中将执行后的结果,缓存为一个静态html文件,下次访问时就直接访问这个静态页面了!减轻了服务器压力!但是,如果一个页面大部分是可静态的,但是有一部分却需要是动态的咋办呢? 如下图中画红线处,就需要动态,时时探测用户是否登录!这就可以使用动态内容缓存技术!

动态内容缓存技术,总体来说就是该静态化的静态化,该动态的保持动态,最后进行组合!

可行的方案大致有三种: CSI , SSI ,ESI

 

一、CSI (Client Side Includes)
   含义:通过iframe、javascript、ajax  等方式将另外一个页面的内容动态包含进来。

   原理:整个页面依然可以静态化为html页面,不过在需要动态的地方则通过iframe,javascript或ajax来动态加载!

   例子:

   优点:相对比较简单,不需要服务器端做改变和配置;

   缺点:不利于搜索引擎优化(iframe方式), javascript兼容性问题,以及客户端缓存问题可能导致更新后不能及时生效!对于客户体验也不够好!

 

二、SSI(Server Side Includes)

   含义:通过注释行SSI命令加载不同模块,构建为html,实现整个网站的内容更新;

   原理:通过SSI调用各模块的对应文件,最后组装为html页面,需要服务器模块支持(具体配置本文不做详述),比如:apache服务器需要开启mod_include模块;

   例子:

          

          

          

   优点:不受具体语言限制,比较通用,只需要Web服务器或应用服务器支持即可,Ngnix、Apache、IIS等对此都有较好的支持。

   缺点:SSI只能在当前服务器上包含加载,不能够直接包含其他服务器上的文件,即不能跨域包含;

 

三、ESI(Edge Side Includes)

    含义及原理:

           网上通用的解释如下:通过使用简单的标记语言来对那些可以加速和不能加速的网页中的内容片断进行描述,每个网页都被划分成不同的小部分分别赋予不同的缓存 控制 策略,使Cache服务器可以根据这些策略在将完整的网页发送给用户之前将不同的小部分动态地组合在一起。通过这种控制,可以有效地减少从服务器抓取整个 页面的次数,而只用从原服务器中提取少量的不能缓存的片断,因此可以有效降低原服务器的负载,同时提高用户访问的响应时间。与SSI不同的是,ESI多在 缓存服务器或代理服务器上执行!

   例子:       





 

            

         


                

这中间是可静态化html内容</3>
         
    


   优点:可用于缓存整个页面或页面片段,比较适合用于缓存服务器上;

   缺点:目前支持ESI的软件还比较少,官方更新也略显缓慢,因此使用不是很广!

 

 

 

任何一个Web网站的内容都是在不断更新和变化,但这并不意味这这个网站的内容就是动态内容,事实上,动态的内容是指用户每次点击 相同的链接时取的的内容是由Web服务器应用程序生成的,如常见得ASP,JSP等,与此相对应,静态内容一般就是指由文本、图像和多媒体组成,在用户每 次单击相应链接时基本保持不变。现在解决动态内容缓存的最新技术就是通过ESI技术来设计网站的内容。
    ESI技术工作原理
    动态生成的内容能为用户带来丰富精彩的页面,网站开发者也可以更容易和更灵活地控制相关的内容,但在享受这些便利的同时,也增加了 网站数据库和应用服务器的处理压力的。当网站的访问量增大后,硬件和数据库的投资是非常巨大的,即使如此,仍然有可能导致页面的严重延迟甚至访问失败。
    用户访问动态生成的内容速度慢的根本原因在于动态生成的内容需要经过一个复杂的过程,首先,根据用户请求的不同将用户的请求分配 到应用服务器相应的软件模块中,软件模块必须通过运算决定需要从数据库中提取什么样的数据给用户,然后再从数据库中提取出相应的数据按照定义的格式传给用 户。这些冗长的过程导致用户访问速度变慢,同时增加了服务器的负载。
    在实际环境中,一个动态生成的页面,当中可能只有少量的内容是频繁变化的或是个性化的,对于传统的Cache服务器来说,为了能 够保证页面的时效性,却由于页面中这些少量的动态内容而无法将整个页面进行缓存。ESI(Edge Side Include)通过使用简单的标记语言来对那些可以加速和不能加速的网页中的内容片断进行描述,每个网页都被划分成不同的小部分分别赋予不同的缓存控制 策略,使Cache服务器可以根据这些策略在将完整的网页发送给用户之前将不同的小部分动态地组合在一起。通过这种控制,可以有效地减少从服务器抓取整个 页面的次数,而只用从原服务器中提取少量的不能缓存的片断,因此可以有效降低原服务器的负载,同时提高用户访问的响应时间。
    ESI是一种简单的标识语言,开发人员可以使用它标志内容片断以便通过相应的Cache服务器来加速缓存。同时ESI还定义了一 套内容效验标准,可以实现原服务器对Cache服务器中缓存内容的管理,提高了网站对内容的控制能力。CDN网络也可以利用在分布全国各地的节点中安装支 持ESI的Cache服务器来提供对网站动态内容提供CDN服务。
 
分享到:
评论

相关推荐

    动态内容缓存技术(wenku)_CSI,SSI,ESI.pptx

    ESI 是一种边缘网络(如CDN,Content Delivery Network)上的缓存技术,用于在靠近用户的地方动态组装网页。它允许部分页面在边缘节点被缓存和更新,而不是整个页面。当一个页面有部分内容需要实时更新时,只有这...

    php缓存技术总结

    ESI技术允许缓存动态内容的部分片段,而这些片段可由服务器动态生成,并与其他缓存片段组合成最终页面。 三、数据缓存 数据缓存是将数据库查询结果存储在缓存中,在需要时直接从缓存读取数据,避免重复访问数据库。...

    ESI9350Applications_Guide

    ESI9350设备就是应用这种技术,通过其激光系统精准定位并修补晶圆上的缺陷。 从提供的内容片段来看,文档详细介绍了ESI9350的应用指南,其中包括了关于内存良率提升系统的详细信息。虽然文档内容不完整,但可以推断...

    esi.rar_interface

    1. **函数原型声明**:如`esi_init()`用于初始化ESI接口,`esi_read()`和`esi_write()`用于读写操作,以及可能的错误处理函数,如`esi_handle_error()`。 2. **数据结构定义**:可能有表示设备状态的结构体,如`esi...

    ESI科研信息评价系统介绍.ppt

    **ESI科研信息评价系统详解** **什么是Essential Science Indicators (ESI)?** Essential Science Indicators(ESI)是由汤森路透科技与医疗集团(现已被科睿唯安Clarivate Analytics收购)开发的一个科研信息评价...

    计算机科学ESI期刊列表201904更新.xlsx

    计算机科学ESI期刊列表 2019年版 计算机科学ESI期刊列表 2019年版 计算机科学ESI期刊列表 2019年版 计算机科学ESI期刊列表 2019年版 计算机科学ESI期刊列表 2019年版

    FANUC机器人EtherCAT通信ESI文件.zip

    EtherCAT(Ethernet for Control Automation Technology)是一种实时工业以太网技术,广泛应用于自动化领域,包括与FANUC机器人的通信。FANUC是全球知名的机器人制造商,其产品在制造业、汽车装配、焊接等领域有着...

    ESI收录期刊和机构统计

    ESI(Essential Science Indicators,基本科学指标)是由著名的学术信息出版机构“美国科学信息研究所”于2001年推出,是基于SCI和SSCI所收录的全球11000多种学术期刊的1000多万条文献记录而建立的计量分析数据库。...

    esi介绍文字

    ESI 集团在巴黎 Euronext(欧洲交易所)Eurolist 交易市场上市,拥有 900 多名高水平专家,公司及其全球代理网络为 30 多个国家的客户提供销售和技术支援。2011 年总销售额为 12220 万欧元。ESI 集团的产品和解决...

    SIITool: 利用EtherCAT设备的ESI文件生成SIIEeprom文件

    此工具可以查看和打印以筛选SII / EEPROM文件和ESI / XML文件的内容。 另外,可以从受支持的ESI文件生成有效的SII二进制文件。 (注:要构建siitool,请确保系统安装libxml2-dev) 步骤1. SIITool: 根据ETG1000_6...

    ESI安装说明

    3. **疑难解答**:如遇到任何问题,可以查阅光盘中的文档或联系博世技术支持。 总体来说,ESI [tronic]的安装、升级和卸载过程涉及到多个步骤,需要仔细阅读并遵循指南,确保每个环节的正确执行。同时,对于初次...

    esi-computer science

    esi-computer science的排名,上传供计算机的小伙伴参考借鉴。

    ESI期刊列表ESI期刊列表

    ESI期刊列表

    网站常见缓存技术

    - **ESI 技术**:使用边缘侧包含(Edge-Side Includes)技术,允许动态内容嵌入到静态缓存中,非常适合于混合型页面。 #### 三、数据缓存 数据缓存是指将数据库查询结果或计算后的数据结果存储起来,以便后续请求...

    ESI2002.rar

    描述中提到的"系新ICT 型号ESI2002"可能是指一个信息技术(ICT)设备或软件,具体可能是某种硬件接口卡、通信设备或者系统组件。"不支持笔记本"暗示这可能是专为台式机设计的,因为笔记本电脑往往具有不同的硬件配置...

    得克威尔早期ESI文件版本——可用来配置EtherCAT

    在本案例中,我们讨论的是得克威尔早期的ESI( EtherCAT Slave Information)文件版本,它对于理解如何配置EtherCAT系统,特别是针对得克威尔的设备,具有重要意义。 ESI文件是EtherCAT网络中的一个重要组成部分,...

    2019 ESI工程期刊目录.pdf

    在文件内容中,由于技术原因导致OCR扫描识别存在一定的错误和遗漏,比如“International Journal of Computer”(国际计算机期刊)应该是一个识别错误,很可能应该是指某个计算机领域的专业期刊,但由于未能完整识别...

    ESI-追踪前沿评价科研

    2. **实例分析2:科大科研产出的对比分析**:以下表格展示了中国科学技术大学与其他四所顶尖大学(麻省理工学院、加州理工大学、普林斯顿大学、卡耐基梅隆大学)在ESI世界前1%学科数方面的比较: | 年份 | 中国科学...

    ESI期刊_最新

    ESI的期刊分类,有助于计算机科学方向的研究者选择研究领域和发表研究成果平台

    ESI的PMP测试题软件

    ESI的PMP测试题软件,PMP认证使用

Global site tag (gtag.js) - Google Analytics