update bg, add cache, clean