1

zend server CE(php5.3)のテスト分割払いがいくつかあります。1つはMac 10.8.2、もう1つはLinux EC2インスタンスで、どちらもインストールに付属するデフォルトのAPC実装(zendデータキャッシュ)を使用しています。

両方のマシンで、私は次のように呼びます。

apc_store("Installation:1234:lastActivity", "x", 120);

次に、そのキーに対してapc_fetchを呼び出します。
Macでは、apc_fetchが機能します。
Linuxでは、apc_fetchはFALSEを返し、失敗します。

ここで、Linuxボックスの奇妙なものについて、いくつかのテストを行いました
。1.キー(y)の最後の文字を削除すると、apc_fetchが機能します。
2.コロン(:)をスラッシュ(/)に変更すると、apc_fetchが機能します。

何が起こっているのかアイデアはありますか?ありがとう...

4

1 に答える 1

1

Zend Server は実際には APC を使用せず、独自の実装である「Zend Data Cache」を使用します。それらの間にはいくつかの微妙な違いがあるようです。

ZDC には「名前空間」があり、キーの前に「{name}::」を付けると、そのプレフィックスで始まるすべてのキーを削除できます。

文字列に 2 つの (連続していない) コロンがある場合、バグがある可能性があります。それまでの間、問題を回避するためにキーの構造を微調整するのは簡単です。

于 2012-12-05T11:00:30.650 に答える