重构缓存读取