Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已答复] sup开发中自有的缓存机制怎么用?

[复制链接]
pusufly 发表于 2009-12-8 13:27:42 | 显示全部楼层 |阅读模式
版主帮忙给个说明行吗?先谢谢了。
Alice.Girl 发表于 2009-12-8 13:47:25 | 显示全部楼层
本帖最后由 Alice.Girl 于 2009-12-8 13:48 编辑
  1. cachetime/900/
复制代码
查询条件时附带即可。
cachetime  缓存更新时间间隔,单位为秒,15分钟更新一次为900
回复

使用道具 举报

lidq.jingwu 发表于 2009-12-8 15:31:22 | 显示全部楼层
回复 1# pusufly


    你想缓存那一部分数据啊。
回复

使用道具 举报

 楼主| pusufly 发表于 2009-12-10 01:08:39 | 显示全部楼层
回复  pusufly


    你想缓存那一部分数据啊。
lidq.jingwu 发表于 2009-12-8 15:31



是这样的,我调用了一部分图片,有新闻的、空间的、论坛的。但是图片出来的时候我用GD库动态调整了下大小,然后我把图片放在首页上,我考虑首页上这么多图片的话,每次访问都要动态的过GD库,这样效率应该不会很高,所以我想把图片第一次过GD的时候缓存起来,然后定时更新。请斑竹帮忙讲讲如何利用现有supsite机制实现。再次感谢。
回复

使用道具 举报

Alice.Girl 发表于 2009-12-10 08:51:58 | 显示全部楼层
本帖最后由 Alice.Girl 于 2009-12-10 08:57 编辑
是这样的,我调用了一部分图片,有新闻的、空间的、论坛的。但是图片出来的时候我用GD库动态调整了下 ...
pusufly 发表于 2009-12-10 01:08

用SS直接读,可以先缓存在读出的吧。
  1. <!--{block name="poll" parameter="sql/SELECT%20%2A%20FROM%20uxiu_home_mtag%20order%20by%20membernum%20desc/limit/0,8/cachetime/900/subjectlen/30/messagelen/90/cachename/hot_mtag/tpl/data"}--><!--hot_mtag-->
复制代码
其中  cachetime/900   cachename/hot_mtag/  便是缓存时间和缓存的命名

直接打出hot_mtag应该就可以了吧。

参考文档 数据调用模块参数详解 https://discuz.dismall.com/thread-1494011-1-1.html

斑竹高见  
回复

使用道具 举报

lidq.jingwu 发表于 2009-12-10 10:20:30 | 显示全部楼层
在ss中的缓存主要分为两块,一块是针对经常查询数据库的SQL是进行的缓存,就是楼上所说的block块,这一部分缓存可以存在数据库中也可以存在文件中。
另一块是针对系统中经常用到的设置,如当前用户,用户组,分类,频道等各种系统性的设置,都是存到缓存中的。

缓存在文件中是存在两个地方,一个是cache文件夹中,这一部分缓存是可以清空的。
一个是data缓存,这一部分的缓存是在安装时产生的,只可以更新,不可以删除,否则系统就起不来了。

将数据写入缓存,根据功能的不同,是有函数来操作的,在function/cache.func.php文件中即是所有的缓存函数。
当然,针对你的情况需要另外再写一个缓存函数了。


ss中的缓存都是以php文件的形式缓存的,而且缓存都是以数组的方式写进去的,程序在使用这些缓存时,只是读取这些数据而已。
具体的代码还是参照某一个函数来做吧。
回复

使用道具 举报

 楼主| pusufly 发表于 2009-12-10 14:37:40 | 显示全部楼层
回复 6# lidq.jingwu


    哦,知道了。我仿着cache.func.php里的函数写就可以了吧。我先试试,遇到问题在回来提问。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-17 16:14 , Processed in 0.036561 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表