0

ビデオWebサイトにシェルバックグラウンドコンバーターがあり、ファイルがアップロードされてその可視性が更新されるときに、APCにキーを削除させることができないようです。スクリプトは次のように構成されています。

if(file_exists($output_file))
{ 
   $conn->query("UPDATE `foo` SET `bar` = 1 WHERE `id` = ".$id." LIMIT 1"); 
   apc_delete('feed:'.$id); 
}

APCを除いてすべて正常に動作し、これがこの問題を抱えているサイト上の唯一のスクリプトです。私は困惑しています。

4

1 に答える 1

1

apacheの外部のプロセスからapacheの内部のAPC共有メモリセグメントにアクセスすることはできません。CLIモードでAPCを有効にすると、CLIスクリプトは独自の共有メモリセグメントを受け取るだけです。

これを回避するには、次の方法があります。

  1. 単一のapacheインスタンスだけでなく、どこからでもアクセスできるAPCの代わりにmemcachedを使用する
  2. CLIスクリプトから呼び出すことができるURL(例:http ://example.com/delete.php?id = 5)を公開します。URLはapache内のスクリプトによって処理されるため、APCにアクセスできます。
于 2010-04-22T01:43:14.793 に答える