Okay, I'll bite. Here's an algorithm for doing it better:
1. Shortly before midnight, create a list of all domains due to be deleted from the database the following day, I'll call this the drop list.
2. For each domain in the drop list:
2.1. Pick a random second for the name to drop between 1 and 86400. I'll call this the drop second.
2.2. Insert the domain and its drop second into a drop queue
3. Sort the queue by the random second picked in 2.1
4. At midnight, enter a loop for each domain in the sorted array:
4.1. Sleep for seconds between now and drop second assigned to the domain at the front of the queue.
4.2. Wait a random number of milliseconds
4.3. Issue the delete command
4.4. Remove the domain at the front of the queue
That would do it; it's hardly rocket science. Might need to adjust the timings slightly to compensate for 4.2 but I can't see a problem there.
P.
P.S. I understand the difference between random and pseudo-random, but that's a bit out of scope here - and entropy gathering isn't too bad - so let's not go there in this discussion