首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >缓存PHP内容的建议

缓存PHP内容的建议
EN

Stack Overflow用户
提问于 2012-08-21 17:45:58
回答 3查看 145关注 0票数 0

所以我的网站开始使用太多的资源。我的网站的核心是一个编码糟糕的vbulletin插件。不幸的是,切换并不那么容易,所以我只能尝试重写一些东西,但最重要的是:附加了不同参数的主页占用了太多的处理能力,如?image.php?id=1和?image.php?id=2。诸如此类。

无论如何,我需要一些东西,我可以用来为每个id在html中缓存这些页面,它们并不会经常改变,只有在发表评论的时候才会改变,所以每次加载它们都是无用的。我以前从来没有用过这样的东西,所以非常欢迎使用任何提示,提示,软件

编辑:我问这个问题的原因是因为我的主机上的处理器使用率开始达到很高,如果我有更多的访问者,我可能会被挂起。

编辑:我在考虑一个类似这样的系统:一个包含每个?id的数据库,如果日期比保存为html的上次缓存版本旧,则加载html,否则运行php脚本并生成新的缓存html。我想我可能不得不自己做这样的东西,只是不太确定如何开始做这样的事情。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-21 18:02:36

您可以为客户端缓存实现上述代码,而对于服务器端,您可以将处理后的图像(如果vbulletin对图像/调整大小/裁剪等操作导致高内存使用率)存储到文件中(在某些缓存目录中),这样PHP就不必在每次调用脚本时都对它们进行处理。

算法本身应该包括对vbulletin所需的$_GET参数进行散列处理,例如id=2width=250height=250

所以代码看起来就像...

代码语言:javascript
运行
AI代码解释
复制
$file = 'cache_dir/'.md5('file_cached_'.$_GET['id'].'_w'.$_GET['width'].'_h'.$_GET['height']).'.jpg';
if ( ! file_exists($file))
{

  $image = get_image_by_id($_GET['id']);

  // this is just example...
  $image_blob = vbulletin_heavy_image_processing($image);

  file_put_contents($file, $image_blob);
  echo $image_blob;
}
else 
{
  echo file_get_contents($file);
}
票数 0
EN

Stack Overflow用户

发布于 2012-08-21 17:49:39

您可以在image.php中将这些添加到最上面

代码语言:javascript
运行
AI代码解释
复制
header("Cache-Control: private, max-age=10800, pre-check=10800");
header("Pragma: private");
header("Expires: " . date(DATE_RFC822, strtotime("2 day")));

if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])) {

    header('Last-Modified: ' . $_SERVER['HTTP_IF_MODIFIED_SINCE'], true, 304);
    exit;
}
票数 0
EN

Stack Overflow用户

发布于 2012-08-21 17:59:34

现在你真正的问题在哪里?数据库调用还是提供静态内容?

在我看来,您应该从使用本地文件系统的简单缓存开始。你能缓存你提到的整个页面中最慢的页面吗?如果是这样,您可以编写自己的简单缓存代码,只需将文件写出到磁盘,并在文件未过期/失效时从磁盘加载它。

还有其他的东西,比如APC,memcaced,它们也可能对你有帮助。快速的谷歌搜索会给你最低的信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12060240

复制
相关文章
Pandas GroupBy 使用教程
实例 1 将分组后的字符拼接 import pandas as pd df=pd.DataFrame({ 'user_id':[1,2,1,3,3], 'content_id':[1,
致Great
2019/01/28
2.1K0
Pandas GroupBy 使用教程
pandas groupby 用法详解
项目github地址:bitcarmanlee easy-algorithm-interview-and-practice 欢迎大家star,留言,一起学习进步
全栈程序员站长
2022/08/27
1.5K0
Pandas GroupBy的使用
在许多情况下,我们将数据分成几组,并在每个子集上应用一些功能。在应用中,我们可以执行以下操作:
致Great
2018/12/07
2.9K0
pandas的Groupby加速
在平时的金融数据处理中,模型构建中,经常会用到pandas的groupby。之前的一篇文章中也讲述过groupby的作用:
钱塘小甲子
2019/03/04
4K0
Pandas GroupBy 深度总结
今天,我们将探讨如何在 Python 的 Pandas 库中创建 GroupBy 对象以及该对象的工作原理。我们将详细了解分组过程的每个步骤,可以将哪些方法应用于 GroupBy 对象上,以及我们可以从中提取哪些有用信息
周萝卜
2022/09/28
5.8K0
Pandas GroupBy 深度总结
玩转 Pandas 的 Groupby 操作
大家好,我是 Lemon,今天来跟大家分享下 pandas 中 groupby 的用法。
小小詹同学
2020/12/11
2.1K0
玩转 Pandas 的 Groupby 操作
Pandas的分组聚合groupby
Pandas怎样实现groupby分组统计 groupby:先对数据分组,然后在每个分组上应用聚合函数、转换函数 import pandas as pd import numpy as np %matplotlib inline df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'], 'B': ['one', 'one', 'two', 'three', 'two
北山啦
2022/11/27
1.7K0
Pandas的分组聚合groupby
Pandas高级教程之:GroupBy用法
pandas中的DF数据类型可以像数据库表格一样进行groupby操作。通常来说groupby操作可以分为三部分:分割数据,应用变换和和合并数据。
程序那些事
2021/07/12
2.9K0
Pandas分组groupby结合agg-transform
.dataframe tbody tr th:only-of-type { vertical-align: middle; } <pre><code>.dataframe tbody tr th { vertical-align: top; } .dataframe thead th { text-align: right; } </code></pre>
皮大大
2023/08/25
2190
pandas的iterrows函数和groupby函数
iterrows() 是在DataFrame中的行进行迭代的一个生成器,它返回每行的索引及一个包含行本身的对象。
润森
2022/09/22
3.2K0
pandas的iterrows函数和groupby函数
pandas多表操作,groupby,时间操作
使用场景:有两张表left和right,一般要求它们的表格结构一致,数据量也一致,使用right的数据去填补left的数据缺漏 如果在同一位置left与right数据不一致,保留left的数据
李智
2018/08/03
3.8K0
pandas多表操作,groupby,时间操作
pandas系列5-分组_groupby
groupby 是pandas 中非常重要的一个函数, 主要用于数据聚合和分类计算. 其思想是“split-apply-combine”(拆分 - 应用 - 合并). 拆分:groupby,按照某个属性column分组,得到的是一个分组之后的对象 应用:对上面的对象使用某个函数,可以是自带的也可以是自己写的函数,通过apply(function) 合并:最终结果是个S型数据 pandas分组和聚合详解 官方文档 DataFrame.``groupby(self, by=None, axis=0,
皮大大
2021/03/02
1.7K0
总结了25个Pandas Groupby 经典案例!!
groupby是Pandas在数据分析中最常用的函数之一。它用于根据给定列中的不同值对数据点(即行)进行分组,分组后的数据可以计算生成组的聚合值。
用户6888863
2023/03/01
3.4K0
总结了25个Pandas Groupby 经典案例!!
5分钟掌握Pandas GroupBy
数据分析本质上就是用数据寻找问题的答案。当我们对一组数据执行某种计算或计算统计信息时,通常对整个数据集进行统计是不够的。取而代之的是,我们通常希望将数据分成几组,并执行相应计算,然后比较不同组之间的结果。
deephub
2021/04/16
2.3K0
对比MySQL学习Pandas的groupby分组聚合
不管是mysql,还是pandas,都是处理像excel那样的二维表格数据的。对于一个二维表,每一行都可以看作是一条记录,每一列都可以看作是字段。
用户1564362
2020/03/13
2.9K0
对比MySQL学习Pandas的groupby分组聚合
Pandas分组与聚合1.分组 (groupby)一、GroupBy对象:DataFrameGroupBy,SeriesGroupBy二、GroupBy对象支持迭代操作三、GroupBy对象可以转换成
文章来源:Python数据分析 1.分组 (groupby) 对数据集进行分组,然后对每组进行统计分析 SQL能够对数据进行过滤,分组聚合 pandas能利用groupby进行更加复杂的分组运算
Python攻城狮
2018/08/23
24.2K0
Pandas分组与聚合1.分组 (groupby)一、GroupBy对象:DataFrameGroupBy,SeriesGroupBy二、GroupBy对象支持迭代操作三、GroupBy对象可以转换成
Pandas入门2(DataFunctions+Maps+groupby+sort_values)
3. Summary Functions and Maps 3.1 Summary Functions 数据总结函数 3.1.1 describe() wine_rev.points.describe(),各种统计信息,数字信息总结 # 数字列的总结 count 129971.000000 mean 88.447138 std 3.039730 min 80.000000 25% 86.000000 50% 88
Michael阿明
2020/07/13
7100
Pandas入门2(DataFunctions+Maps+groupby+sort_values)
pandas:解决groupby().apply()方法打印两次
对于以下dataframe执行dataframe.groupby(['name', 'course']).apply(lambda x: test(x)) 操作
Bo_hemian
2020/09/09
1K0
pandas中的数据处理利器-groupby
在数据分析中,常常有这样的场景,需要对不同类别的数据,分别进行处理,然后再将处理之后的内容合并,作为结果输出。对于这样的场景,就需要借助灵活的groupby功能来处理。
生信修炼手册
2020/07/02
3.7K0
对比MySQL学习Pandas的groupby分组聚合
不管是mysql,还是pandas,都是处理像excel那样的二维表格数据的。对于一个二维表,每一行都可以看作是一条记录,每一列都可以看作是字段。
朱小五
2020/02/20
3.2K0
对比MySQL学习Pandas的groupby分组聚合

相似问题

Pandas + groupby

30

Pandas: groupby

228

Pandas Groupby: Groupby条件语句

12

从Pandas groupBy到PySpark groupBy

15

Pandas Groupby & Pivot

115
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文