24

我有以下代码,信号量不会按预期锁定它。

(我知道 apc_inc。这不是我要找的。)

$semkey = sem_get(123);
sem_acquire($semkey);

$count = apc_fetch('count111');
if(!$count) $count = 0;
$count++;
apc_store('count111', $count);

sem_release($semkey);

其次是

ab -n 4000 -c 200 http://localhost/test.php

0 个请求失败。

但在那之后一个apc_fetch('count111')节目只有〜1200次点击

ubuntu 12.04 (64bit) 上的 nginx,php 5.3.16~dotdeb,php-fpm

  • 更新 1:在 Linux mint 5.4.6~dotdeb 上完美运行,内置 Web 服务器。我将尝试使用相同版本的同一台机器与 nginx。
4

1 回答 1

1

显然,问题出在 APC 本身,而不是信号量。
更新到PHP 5.4.8 -1~dotdeb.0 解决了 nginx 和内置服务器测试运行的问题。

于 2012-10-29T15:21:54.080 回答