Why did procwatch kill processes on my Shared server?

DreamHost shared web servers run a procwatch daemon that kills processes using too much processor-power and/or memory. This may result in a website running slow or completely going down.

This procwatch daemon is necessary since it helps to identify and stop processes/programs, both bad and good, from unexpectedly hogging up resources which may directly and negatively affect other users on the same server.

Procwatch maintains log files of its actions, but there is no access to this file for DreamHost customers. If you would like to confirm if procwatch is killing your scripts, contact support on the (Panel > 'Support' > 'Contact Support') page:

This article only applies to Shared hosting plans. VPS, Dedicated and DreamPress hosting do not share these procwatch limitations.

Procwatch details

Each user and account has a specific amount of resources allocated. When those limits are hit, your scripts are killed. This may result in a website running slow or completely going down.

All processes run by a shell or FTP user are counted together. This includes:

  • website activity
  • running scripts
  • shell commands
  • and so on

Additionally, all processes run by all users on the server from the same DreamHost account are also counted together. When a process is killed it is generally not using too much memory by itself, it was just the process that tipped the total usage over the limit.

Resolving issues with procwatch

Checking your error.log

If you are running a script from a command line, for example, running an install script, your script may quit prematurely. Your error log file may show "killed" or you may see the error "Premature end of script headers". Check your site's error log file to confirm.

Checking your memory consumption

The following articles help to lower your memory consumption and avoid hitting your procwatch limits in the future:

The easiest way to avoid having your processes killed for excessive memory usage is to make them use less memory. The procwatch daemon monitors memory usage across all processes you are running, not just one individual process. Because of this, you may run into memory limits prematurely if you have a number of PHP processes running at the same time. Temporarily disabling busy sites on the same user may help as well.

If troubleshooting doesn't lower memory usage

If you've gone through all troubleshooting suggestions and find the memory consumption is still hitting the shared server's limits, the only option is to upgrade your hosting plan.

The first step is to upgrade to a VPS.

See also

Did this article answer your questions?

Article last updated .