Refactor post_random to use async to speed up transaction (still needs to get better)