How about scaling dynamically with load? Something like:
PHP Code:
$loadMult = (($loadavg[0] * 100) +5); //change these values to tweak frequency of writes
if ( mt_rand(1,$loadMult)=='1' ) {
...snip...
This would seem to work better at least with smaller forums that have occasional very heavy peaks where you still want views to be updated frequently, but less based proportionally on load.