如何设计缓存框架