gpt4 book ai didi

php - Linux 高速(/无影响)存储(用于设置)和 PHP

转载 作者:太空宇宙 更新时间:2023-11-04 09:55:34 26 4
gpt4 key购买 nike

如果标题听起来令人困惑,我很抱歉,如果您在这段描述后有更好的想法,请随时提出建议。

简而言之,我在 Linux 上使用 PHP 以及以下假设的文件/代码:

job.php:

if(setting_get('started')!='on'){
setting_set('started','on');
echo 'Starting...';
set_time_limit(0); // ad infinitum (in theory)
ignore_user_abort(true); // ignore disconnection
while(setting_get('started')=='on'){
// do something
sleep(10);
}
}else echo 'Already started!';

接口(interface).php:

switch($_REQUEST['action']){
case 'status':
echo 'Service is: '.setting_get('on');
break;
case 'start':
header('Location: job.php');
break;
case 'stop':
setting_set('started','off');
break;
case 'restart':
setting_set('started','off');
header('Location: job.php');
break;
}
echo '<a href="?action=status">Check Status</a>';
echo '<a href="?action=start">Start</a>';
echo '<a href="?action=stop">Stop</a>';
echo '<a href="?action=restart">Restart</a>';

代码应该是不言自明的。基本上,job.php 应该只能运行一个实例,无限期直到用户从 interface.php 明确停止它,它在用户和这份工作。

我的问题是 setting_getsetting_set - 它们只是假设函数,可以很容易地用平面文件或数据库替换。问题是它们被称为很多,这就是为什么它们应该运行得快并且消耗很少的内存(如果可能的话,甚至根本不消耗内存)。

想法?

编辑:应该注意的是,到目前为止我保存的设置也可以是一个简单的 bool 标志。

Edit2 关于 Memcached/APC/Redis。我想知道,我不能在 MEMORY 类型的数据库上使用普通的 mysql 函数吗?我想知道有多少开销?问题是,我宁愿使用我已经拥有的东西也不愿安装新东西,但话又说回来,这取决于实现。

最佳答案

APC怎么样?的 apc_storeapc_fetch

关于php - Linux 高速(/无影响)存储(用于设置)和 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5187594/

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