ego008
ego008
2531 6 0

Go中四个替换策略FIFO,LRU,CLOCK和LFU的实现

当缓存满时应退出哪个缓存项?这个问题取决于项目需求,cache-replacement-policies 这个库用 Golang 实现四个替换策略FIFO,LRU,CLOCK和LFU。

使用很简单

mc := cache.NewCache(5, cache.LRU)
mc.Put("k", "value")
mc.Get("k", "value")

集成简化操作

项目 https://github.com/brunocalza/cache-replacement-policies

0

See Also

Nearby


Discussion (6)

waiducom
waiducom 2021-05-26 00:00

@ego008 新版的程序兼容旧版的数据吗?真的迫切需要使用新版本,特别是github登录,

0
youbbs
youbbs 2021-05-26 11:59

@waiducom #1 数据库不一样,数据结构一样,需要转一下,有时间我做一个转换

0
waiducom
waiducom 2021-05-26 20:33

@youbbs #2 好的谢谢

另外我想在所有外链地址加上src=domain.com

代码下面这样改对吗?

codeRegexp    = regexp.MustCompile("(?s:```(.+?)```)")
imgRegexp     = regexp.MustCompile(`(https?://[-\w./:]+/[\w./]+\.(jpg|jpe|jpeg|gif|png))`)
gistRegexp    = regexp.MustCompile(`(https?://gist\.github\.com/([a-zA-Z0-9-]+/)?[\d]+)`)
mentionRegexp = regexp.MustCompile(`(?:\s|^)@([a-zA-Z0-9\p{Han}]{1,32})\s?`)
urlRegexp     = regexp.MustCompile(`([^;"='>])(https?://[^\s<]+[^\s<.)])`)src=domain.com
nlineRegexp   = regexp.MustCompile(`\s{2,}`)
youku1Regexp  = regexp.MustCompile(`https?://player\.youku\.com/player\.php/sid/([a-zA-Z0-9=]+)/v\.swf`)
youku2Regexp  = regexp.MustCompile(`https?://v\.youku\.com/v_show/id_([a-zA-Z0-9=]+)(/|\.html?)?`)

hrefRegexp = regexp.MustCompile(`href="[^"]+?"`)
aTagRegexp = rege
0
ego008
ego008 2021-05-26 23:39

@waiducom #3 不对

在这个循环里 https://github.com/ego008/goyoubbs/blob/master/util/contentfmt.go#L180-L188v.Href 做判断并修改为需要的。

0
ego008
ego008 2021-05-28 20:57

@waiducom #1 youBBS 2 to 3 数据转换 https://youbbs.org/t/3335

0
waiducom
waiducom 2021-05-28 22:20

@ego008 #5 好的谢谢

0
Login Topics