gpt4 book ai didi

php - 使用 cronjob 更新和显示 MySQL 查询的结果

转载 作者:行者123 更新时间:2023-11-29 12:05:11 25 4
gpt4 key购买 nike

我在如何实现一个动态网站时遇到了一些麻烦,其中数据通过 ajax 获取给用户。

ajax 的末尾是一个简单的 php 脚本,它打开到我的数据库的 MySQL 连接并获取一些结果(对所有用户来说都是相同的,没有任何特定于用户的结果)以便稍后显示它们在表格中。

这就是我到目前为止的情况。它正在工作,但是当有成千上万的用户打开该网站时......这不会很好,我认为我的服务器更新速度不够快。

所以我的目的是每 x 秒在服务器端使用 cronjob 更新一次想要的结果,也许我会节省大量资源。

问题是我不知道如何实现这一部分,我可以得到一些帮助吗?或者我应该忘记 ajax 的东西并开始使用 node.js ?

我有一个非常好的根服务器,它也是我的网络空间,因此可以安装一些额外的应用程序。

最佳答案

一个非常基本的 Node.js 解决方案,使用 memory-cachenode-cron :

var cache = require('memory-cache');
var CronJob = require('cron').CronJob;

var job;
var jobStarted = false;
var rateLimitExceeded = false;

var job = new CronJob('5 * * * * *', function() {
// Runs every 5 seconds
doALongDataBaseOperation(function(err, data) {
cache.put('cacheId', data);
});
});

app.get('/path/that/needs/caching', function(req, res) {
cache.get('cacheId', function(e, data) {
if (data) {
res.end(data);
} else {
// contingency in case the cache doesn't exist
doALongDataBaseOperation(function(err, data) {
res.end(data);
cache.put('cacheId', data);
});
}
});
});

关于php - 使用 cronjob 更新和显示 MySQL 查询的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31619065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com