Questions tagged «transient»

Transients API提供了一种标准化的方法来将数据临时(带有到期时间)存储在数据库中。

3
是否收集了瞬态垃圾?
这个问题让我想到wp_options中的瞬态RSS提要不会自动删除吗? 瞬态应该过期并被删除。但是,我看到此处理的唯一方法是当瞬变过期并被请求时,然后在请求期间将其删除。 如果瞬变已过期但之后又没有请求怎么办?从法典中的描述,我认为这意味着某种垃圾回收。现在,我不确定,也找不到执行此操作的任何代码。 那么它将永远永远停留在数据库中吗?

4
对象缓存如何工作?
我在这里寻找一个明确的答案。启用对象缓存后,选项和瞬态在哪里结束? 默认情况下,两者都存储在数据库中。但是我听说一些参考资料称Memcache会将它们存储在其他位置,而APC将完全做其他事情。在这两种情况下,这些数据究竟将保留在哪里?

3
我应该使用Transient API来存储HTML字符串还是对象?
假设有一个插件可以显示20个相关帖子(每个帖子)以及非常复杂的查询。然后使用此查询中的数据,构建复杂的HTML布局。另外,应注意,该插件是公共的,可以安装在具有任何配置的任何服务器上。 就像是: /* complex and large query */ $related_posts = get_posts( ... ); $html_output = ''; foreach($related_posts as $key => $item) { /* complex layout rendering logic (but not as slow as the previous query) */ $html_output .= ...; } 所以我的问题是: 缓存此类数据的最安全,最正确的方法是什么? 我应该使用Transient API来缓存$related_posts数组或$html_output字符串吗?如果我要缓存$html_ouput字符串,它将达到最大大小限制吗?保存之前,我应该gzip压缩吗? 我应该在这里全部使用Transient API吗?
18 cache  transient 

5
我什么时候应该使用Transients API?
我以前从未使用过Transients API,并且想知道是否有人对何时使用它提供了指导。该法典文章暗示为主题的开发者,我可能需要设置每一个新的WP_Query()为一过性; 我认为直接$ wpdb查询和也可以这样说query_posts()。那是过度杀伤力吗?和/或还有其他地方我应该默认使用它? 我经常在我的站点上使用缓存插件(通常是W3 Total Cache),听起来好像使用Transients可能会提高插件的有效性,但是如果这不是最佳实践,我不想疯狂地将所有内容包装在瞬态中。
16 transient 

6
如果删除wp_options表中的所有瞬时记录,是否会破坏我的站点?
我的网站目前在wp_options表中有50万多个临时记录。这导致该表经常崩溃,因此也是我的网站。 我认为临时记录将在一段时间后全部过期。我不确定哪个插件负责,什么出了问题。但是,我不希望我的网站经常像这样崩溃。wp_options几周前,表中的记录数量已总计增加到200k +,现在增加到500k +。 我是否应该只删除%transient_timeout%记录-目前超过200k? 任何帮助将不胜感激。 2012年7月16日更新 我实际上通过删除所有临时记录冒了风险(我先备份了我的网站),此后我的网站数据库就没有崩溃过:) 再次感谢大家!

1
如何确保一次只运行一个wp_cron()?
我有大约20个wp_cron()函数,例如以下代码。几乎所有的老太婆每小时都跑一次;每天有几个。 if ( ! wp_next_scheduled( 'my_task_hook' ) ) { wp_schedule_event( time(), 'hourly', 'my_task_hook' ); } add_action( 'my_task_hook', 'my_task_function' ); function my_task_function() { //Complex Code } 为了提高服务器性能,以免不断收到托管公司的服务器限制消息,我想确保在给定的时间仅运行一个cron ...有可能吗? 当前接受的答案很好,但是我有以下问题,这就是为什么我开始悬赏这个问题。 请先阅读接受的答案。 让承担的Cron 1个奔跑,我cron2的代码将无法运行,因为我们仍然在里面5分钟的cron先仍在运行,但由于wp_schedule_event( time(), 'hourly', 'my_task_hook' );对cron2运行,我认为WordPress的考虑作为cron2运行.....所以基本上代码的cron2代码永远不会运行.....或者我误会了什么?

3
删除所有瞬变是否有危险?
我有一个供客户使用的大型站点,并且由于它是真正定制的wordpress安装,具有许多功能扩展,因此我无法使用缓存插件。 为了提高性能,我使用瞬态构建了很多站点(例如,导航,带有所有标记的google映射等),并使动态内容保持动态。 这里的问题是,如果我更改了任何内容,则必须手动删除特定的瞬态以查看当前结果。当从不同的频道输入时,该网站会显示不同的菜单和googlemaps,因此我希望每个区域都有十个瞬态。 您是否要创建一个函数一次删除所有这些瞬变函数(并列出瞬变的名称),还是可以删除站点上的所有瞬变? 并不是真的那么紧迫,但是对于未来的发展,我想知道您是否对类似的东西有任何问题,以及如何管理所有瞬态。 欢呼,菲斯基

2
get_option()是否比访问get_transient()更快?
今天,我对数据库进行了测试,以探讨从选项,自定义表和瞬态访问键之间的速度差异。我运行了1000次测试,以下是运行1000次get操作所花费的时间: get_transient() 0.0245秒 get_option() 0.0068秒 自定义表中的简单选择操作0.65秒 我还检查了此测试过程中瞬态未过期。所以问题是,get_option()比get_transient()我测试中的速度快还是弄乱了?自定义表格是否由于WordPress默认缓存的选项而延迟?另外,选项是否也由瞬态等不同的缓存插件缓存?

2
使用Transients API缓存远程(HTTP)请求
我正在尝试get_transient()在Wordpress中使用method,我已经阅读了文档,似乎在做文档中描述的操作。 我需要在网站上显示天气,并且我正在使用每6小时更新一次的第三方天气API。 我们正在创建本地天气缓存,以便仅在到期后调用该API。(其他原因:API速率限制) 这是我的代码: $country = 'India'; $API_Key = 'xxxxxxxxxxxxxx'; $url = 'http://weatherAPI.com/feed/weather.ashx?q='.$latlong.'&format=json&num_of_days=4&key='.$API_Key; $weather = get_transient($location); if (false === $weather) { $ch = curl_init(); curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 0); $weather = curl_exec($ch); curl_close($ch); set_transient($location, $weather, 60*60*6); } 当我发送一个要获取天气(say delhi)的位置并且如果它不在缓存中时,我期望它会false在返回以下字符串时返回 '{ "data": { "error": …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.