code: func NewLRUCacher2(store core.CacheStore, expired time.Duration, maxElementSize int) *LRUCacher {
  	cacher := &LRUCacher{store: store, idList: list.New(),
  		sqlList: list.New(), Expired: expired,
  		GcInterval: core.CacheGcInterval, MaxElementSize: maxElementSize,
  		sqlIndex: make(map[string]map[string]*list.Element),
  		idIndex:  make(map[string]map[string]*list.Element),
  	}
  	cacher.RunGC()
  	return cacher
  }
docs: // NewLRUCacher2 creates a cache include different params