While publishing a solution or application, in Service Center or Lifetime, the publishing hangs in any step forever.
In windows System event logs you see the following message:
A worker process with process id of '3688' serving application pool 'ServiceCenter' has requested a recycle because it reached its private bytes memory limit.
The Application pool is configured to recycle when the memory consumed reaches a certain limit. This limit is not high enough to allow Service Center to complete the publishing operation.
You need to ensure that IIS Server’s recycling settings are properly setup.
Open the IIS Manager (under Administrative Tools) and navigate to the application pools. Go to the “recycling” configuration for the application pool which contains Service Center (in Windows 2008 right-click and click recycling, in 2003 right-click and select properties then the recycling tab).
Ensure only “Private Memory Usage” limit is in use and that the value there makes sense. See the post linked below for more details on how to fine-tune these values. If you need to immediately proceed with publishing, clear all checkboxes to remove any automatic recycling, but it is recommended that you later configure these values properly.
 Unless you really need to have one of the other options enabled.