快速业务通道

建立一个典型的Ruby On Rails网站(四) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14

建立一个典型的Ruby On Rails网站(四)

时间:2011-12-08 javaeye 夜鸣猪

缓存和页面显示,这是最后一个部分了,真没想到一个连载竟然用了几个小时。累了...

外部链接和跟踪

如果想对外部网站资源进行链接和跟踪,可以使用如下的helper方法:

Ruby代码

  external_link_to(text,url)
  external_link_to(image_tag(image),url)

这两种生成链接的方法(一种是文字链接,一种是图形链接)都可以对链接情况进行日志记录。如果将environment.rb文件中的$USE_EXTERNAL_LINK_POPUPS 参数设置为真,外链接将一弹出框形式存在。下面的参数可以传递给Url

Ruby代码

  :new_window=>true or false -- determines if link appears in new browser window (defaults to true)
  :show_only_if_link=>true or false -- determines if image or text is shown if no URL was supplied (defaults to false)
  :show_link_icon=>true or false -- determines if the external icon image is shown after the link (defaults to true for text links and false for image links)

对于图形,可以传递如下参数:

Ruby代码

  :alt=>''value'' -- alt tag is set with the value passed
  :title=>''value'' -- title tag is set with the value passed

对于当前来说,还没有提供对外部链接跟踪情况的报表。所有的链接跟踪情况通过 "external_link_logs" 数据库进行存储。

部分缓存机制

部分缓存功能需要配置文件设置,才能启用(config/production.rb)并且要打开存储机制

如下:

Ruby代码

   
  config.cache_store = :mem_cache_store, ''10.0.0.1:11211'', ''10.0.0.2:11211''

缓存设置如下:

Ruby代码

 config.action_controller.perform_caching = true

建立一个典型的Ruby On Rails网站(四)(2)

时间:2011-12-08 javaeye 夜鸣猪

静态页面首先将被缓存。主页面的缓存周期是一个小时。或者通过  config/environment.rb文件的 $CACHE_CLEAR_IN_HOURS 参数定义

头文件和导航栏的缓存通过动态的部分缓存,当改变的时候进行清除。

搜索功能的缓存,依赖与检索类序,语言,和是否有审查的状态,进行缓存。

当用户用管理员或内容合伙人登录的时候,页面将不进行缓存。

进行缓存的项目如下:

Ruby代码

- taxon_id
- language
- expertise level
- vetted or all information
- default taxonomic browser
- curator for page

页面缓存的过期,可以通过手动或服务器定时调用如下地址实现:  They only work if called

Ruby代码

  localhost:3000/expire_all    # expire all non-species pages
  localhost:3000/expire_taxon/TAXON_ID  # expire specified taxon ID (and it''s ancestors)
  localhost:3000/expire_taxa/?taxa_ids=ID1,ID2,ID3 # will expire a list of taxon IDs (and their unique ancestors) specified in the querystring (or post) parameter "taxa_ids" (separate by commas)
  localhost:3000/clear_caches # expire all fragment caches (if supported by data store mechanism)

对于应用程序内容,可以通过如下方法调用实现。

Ruby代码

  expire_all   # expire all non-species pages
  expire_taxon(taxon_ID)  # expire specified taxon id and ancestors (unless :expire_ancestors=>false is set)
  expire_taxa(taxon_ID_array)# expire specified array of taxon ID and unique ancestors (unless :expire_ancestors=>false is set)
  clear_all_caches # expire all fragment caches (everything!)

页面显示插件ASSETT PACKAGER

(C

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号