go-cache는 k-v 형식을 저장하는 메모리 기반 고속 캐싱 도구입니다. 단일 머신에서 실행되는 애플리케이션에 적합하고, 모든 데이터 유형의 값을 저장할 수 있으며, 여러 고루틴에서 안전하게 사용할 수 있습니다. (추천 학습: go)
go-cache는 영구 데이터 저장소로 사용하도록 고안되지 않았지만 전체 캐시된 데이터를 파일(또는 모든 io.Reader/Writer)과 데이터 소스에 저장할 수 있습니다. 로드에서 신속하게 지정하고 상태를 신속하게 복원할 수 있습니다.
Demo
package main import ( "log" "time" "github.com/patrickmn/go-cache" ) func main(){ c := cache.New(30*time.Second, 10*time.Second) c.Set("Title", "Spring Festival", cache.DefaultExpiration) value, found := c.Get("Title") if found { log.Println("found:", value) } else { log.Println("not found") } time.Sleep(60*time.Second) log.Println("sleep 60s...") value, found = c.Get("Title") if found { log.Println("found:", value) } else { log.Println("not found") } }
output
2019/02/05 17:49:32 found: Spring Festival 2019/02/05 17:50:32 sleep 60s… 2019/02/05 17:50:32 not found
먼저 키 만료 시간이 30초인 새 캐시를 생성하고 10초마다 캐시에서 만료된 키를 삭제합니다.
캐시에서 만료된 키를 정기적으로 지우는 것은 상주 고루틴을 통해 구현됩니다.
다음으로 키/값과 만료 시간을 설정하세요. 만료 시간은 기본 만료 시간인 30초를 사용합니다.
이 키를 얻으면 현재 캐시에 이 키가 존재하는 것을 볼 수 있습니다.
방금 설정된 키를 만료하려면 60초 동안 자세요.
키를 다시 가져오세요. 현재 키는 만료되어 지워졌으며 더 이상 캐시에 없습니다
위 내용은 golang-cache는 글로벌인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!