Have fork_worker only heartbeat occasionally.

It previously heartbeated every time through its top-level loop, which
can be a lot of expensive Redis operations if it's spinning trying to
start up a lot of workers all at once.