如何更改Alternative PHP Cache(APC)中的锁定机制?

Cor*_*lou 2 php caching facebook locking apc

我最近在Scribd的一个演示文稿中读到,Facebook已经为APC的各种锁定机制进行了基准测试,包括文件锁(默认),IPC信号量锁,linux Futex锁,pthread互斥锁和自旋锁.您可以通过单击以下链接查看此演示文稿:APC @Facebook

我想知道是否有人知道这个源代码是否已经发布,可能是在某个地方的git或SVN存储库中?从默认文件锁定切换到其他选项之一的速度优势似乎很重要.

Pat*_*ert 6

是的,它们包含在http://pecl.php.net/package/APC中提供的源代码中.

请注意,您必须在编译时选择此项,更准确地说:在./configure时.以下是./configure的相关选项:

--enable-apc-sem            Enable semaphore locks instead of fcntl
--disable-apc-pthreadmutex  Disable pthread mutex locking
--enable-apc-spinlocks      Enable spin locks  EXPERIMENTAL
Run Code Online (Sandbox Code Playgroud)

如您所见,pthread互斥锁定现在已经是默认值.