优化了缓存的代码