yusr 发表于 2026-4-27 02:04:41

Diy设置问题,DIY到底 New

Diy设置问题,DIY到底应该怎么设置?


我的环境:Discuz X3.4版本,2C4G配置,宝塔linux,论坛首页配置了幻灯片PPT+新帖、新回复面板,如下图








我想要的效果:用户访问网页不卡,同时保证DIY数据可以及时更新。


我遇到的问题:


1、我因为想要把最新发布、最新回复及时的展示出来,所以我把DIY设置为1分钟更新一次,但是这样就导致用户访问论坛首页的时候,非常卡,会卡顿3~5秒。我猜测原因和逻辑是这样的:比如设置1分钟更新1次,就会让Discuz X每1分钟就把之前的缓存数据删除掉,当检测到用户访问首页的时候,就更新缓存数据,把这个数据给用户展示出来。所以这个过程要重新加载,导致用户每次访问首页都会卡顿3~5秒。请问我猜测是这个逻辑,对不对,是不是这样的逻辑和过程?


2、我发现像上面那样设置,导致非常卡,访问体验非常差劲,我就想调整为每天晚上12点钟更新,所以我把DIY更新时间设置为1440分钟,就是1天时间,我勾选的是准时更新。但是我第二天早上9点钟访问论坛,发现这个最新发帖、最新回复页面,并没有更新,还是之前的列表。我肯定是在昨天晚上之前,新发了帖子、新发了回复的,这点可以放心。请问,为什么没有在晚上12点更新?他更新时间和逻辑是怎么算的?是以自然时间的晚上12点为更新时间?还是以我点击确定的时间,为计时开始的时间去计算1440分钟?








3、综上,请官方的管理员或者真正懂DIY老师,帮忙答疑解惑一下,告诉我这个到底是什么样的逻辑?更新区间又是什么意思?什么控制效果?我应该怎么样设置,才能达到我想要的效果:既可以及时更新列表信息(至少5分钟更新1次)、又可以让用户访问的时候不卡顿?有两全其美的办法吗?比如设置定时计划任务,让Discuz X计划任务、或者添加宝塔计划任务,代替人访问论坛首页,达到自动更新数据,自动保存缓存的效果?


我知道答案 回答被采纳将会获得1 贡献 已有12人回答

月落秋水 发表于 2026-4-27 02:05:23

官方文档,对此也没有说明。https://addon.dismall.com/library/x3/front/portal/diy.html

       

                        无人知晓吗?

       

.ce-block {        margin-top: 20px;    margin-bottom: 20px;}.ce-block__content,.ce-toolbar__content {        /* max-width:calc(100% - 50px) */        margin-left: auto;    margin-right: auto;}/** * Plugin styles */.ce-header {position: relative;padding: 1px 0px 1px 15px;margin: 0;line-height: 1.25em;outline: none;margin-bottom: 10px;}.ce-header p,.ce-header div {padding: 0 !important;margin: 0 !important;}.ce-header::before {    content: "";    width: 0;    height: 0;    border-top: 8px solid transparent;    border-bottom: 8px solid transparent;    border-left: 12px solid #155BD5;    position: absolute;    left: 0;    top: 50%;    transform: translateY(-50%);    background-color: transparent;    border-radius: 0;}/** * Styles for Plugin icon in Toolbar */.ce-header__icon {}.ce-header::before {position: absolute;content: attr(data-placeholder);color: #707684;font-weight: normal;display: none;cursor: text;}.ce-header:empty::before {display: block;}.ce-header:empty:focus::before {display: none;}/* FontSize */h1.ce-header {    font-size: 2.0em;}h2.ce-header {    font-size: 1.7em;}h3.ce-header {    font-size: 1.4em;}h4.ce-header {    font-size: 1.15em;}h5.ce-header {    font-size: 0.95em;}h6.ce-header {    font-size: 0.8em;}/* Alignment*/.ce-header--right {text-align: right;}.ce-header--center {text-align: center;}.ce-header--left {text-align: left;}.ce-header--justify {text-align: justify;}.inline-code {background: rgba(250, 239, 240, 0.78);color: #b44437;padding: 3px 4px;border-radius: 5px;margin: 0 1px;font-family: inherit;font-size: 0.86em;font-weight: 500;letter-spacing: 0.3px;}

::Bra 发表于 2026-4-27 02:06:00

这个 猜测是 你点 确定的时间+设置分钟数, 然后 更新

每次自动更新 都是需要有人访问页面 进行触发的, 查询比较耗时, 所以你访问 正好触发更新的话, 速度就会卡顿;

如果想非常频繁的更新, 就 只能开插件优化了

ROBOT 发表于 2026-4-27 02:06:21

不太明白,希望大哥能进一步指教一下,谢谢了。。

IT618应用中心 发表于 2026-4-27 02:07:09

我看过你的帖了,逻辑不一样。你发的这个,是DIY随机刷新帖子,跟我的需求不一样。我的需求是,刷新尽可能及时,并且网站不能卡顿。

霸王别姬 发表于 2026-4-27 02:07:29

换个思路,能不能让DIY,不再随时更新,而是有更新的时候,再更新,意思就是,有新帖的时候,才更新。。
这样是否可行?

yusr 发表于 2026-4-27 02:08:09

世纪难题,无人能解?

::Bra 发表于 2026-4-27 02:08:20

可以有偿处理!有预算的话 加 QQ

IT618应用中心 发表于 2026-4-27 02:08:53

能不能说一下思路,我不想搞太多插件了。。已经几十个插件了。

可可的可 发表于 2026-4-27 02:09:41

可以分析SQL慢查询,增加索引 试试
页: [1]
查看完整版本: Diy设置问题,DIY到底 New