|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #58155 APC crashes application pools or webgardens
Submitted: 2008-04-14 17:42 UTC Modified: 2014-02-28 12:48 UTC
From: hayden dot james at pinstack dot com Assigned: krakjoe (profile)
Status: Closed Package: APC (PECL)
PHP Version: 5.2.5 OS: Windows 2003 server IIS 6
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
Block user comment
Status: Assign to:
Bug Type:
From: hayden dot james at pinstack dot com
New email:
PHP Version: OS:


 [2008-04-14 17:42 UTC] hayden dot james at pinstack dot com
In IIS6 you can't use php_apc.dll with application pools or webgardens (Multi-Instance/Multi-Threading). When you try it, the Application pools crash when requests run.

Reproduce code:
Install latest stable APC
In IIS 6 right click the apppool which serves the same site where APC is installed and "Maximimum number of worker processes to ANY number above 1"

The Application pool will crash when requests run. To stop www service you will now have to manually stop the w3wp.exe instances using task manager.

Expected result:
I expect it to work like xcache which we've had to use. However, xcache seems slower but stability always comes first.

Actual result:
site halts and stops serving request. Anonymous connections (requests) skyrocket into a backlog and can halt entire system if you don't have "rapid fail protection" iis feature enabled.


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2008-04-14 17:50 UTC] hayden dot james at pinstack dot com
Should be:

and increase "Maximimum number of worker processes" to ANY number above
 [2014-02-28 12:48 UTC]
-Status: Open +Status: Closed -Assigned To: +Assigned To: krakjoe
 [2014-02-28 12:48 UTC]
Closing this bug for several reasons:
 5.2 is no longer supported software.
 APC is no longer the primary means of caching opcodes.

 Side note:

 The reason for this behaviour is explicable, APC shares memory between child processes, this is most suited for most kinds of environment and allows the fastest kind of mapping. It may have been avoidable by configuration, or may have just been incompatible.

Thanks for helping to make PHP better :)
PHP Copyright © 2001-2022 The PHP Group
All rights reserved.
Last updated: Sat May 21 22:03:33 2022 UTC