We use keepalive for all our servers and it works well. Sadly there is an interesting thing to note though. If the DB is down while OpenACS tests for the DB (bootstrap) but comes up right afterwards, the dbtest.tcl script works (it returns success), but OpenACS is still down. Haven't detected how and why this happened yet, but thought I let you know nevertheless.
If you run more than one server on your machine, schedule the keepalive scripts for each server to a different minute. Otherwise, if you restart your database, all servers want to start at the same time, which will take longer for each so your keepalive schedule (I call every 4 minutes) might be to tight for the server to come up properly.