V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
matrix1010
V2EX  ›  Go 编程语言

Vitess 将使用 Theine 作为 plan cache

  •  1
     
  •   matrix1010 ·
    Yiling-J · 2023-09-15 22:10:49 +08:00 · 1436 次点击
    这是一个创建于 439 天前的主题,其中的信息可能已经有所发展或是发生改变。

    PR 传送

    Vitess 将在 18.0 废弃旧的 Ristretto 及 LRU 缓存,统一使用 Theine 。作为一个只有 110 个 stars 的不知名项目被 Vitess 这种级别的采纳感觉有点受宠若惊。Vitess 在讨论及提 PR 的时候都没有 at 过我,还是 ben 大神在我的PR里告诉我的。希望感兴趣的小伙伴也多试用一下 Theine ,毕竟我自己没什么大厂经历,没有高并发海量数据之类的验证环境。

    顺便放上两个版本的 Theine 以及 benchmark:

    Python / Go / Go 的 benchmark

    7 条回复    2023-09-24 01:25:42 +08:00
    hh4062703
        1
    hh4062703  
       2023-09-16 08:13:12 +08:00 via iPhone
    赞啊
    matrix1010
        2
    matrix1010  
    OP
       2023-09-16 09:16:03 +08:00
    @hh4062703 感谢
    mightybruce
        3
    mightybruce  
       2023-09-16 17:03:16 +08:00
    小伙你项目可能火了,vitess 可是云原生分库分表的项目。
    另外 planetscale serverless 数据库 都是基于 vitess 上的。
    matrix1010
        4
    matrix1010  
    OP
       2023-09-16 17:34:12 +08:00
    @mightybruce cache 这么底层的东西很难火,除非是 Redis 这样独立成服务的。ristretto 能有这么多 stars 是 dgraph 本身的流量加持,caffeine 则是因为完全原创了 tinyLFU 缓存策略。其实能多些用户使用我就很开心了,用户多了要是有什么 bug 也能及时发现
    CC11001100
        5
    CC11001100  
       2023-09-17 11:43:37 +08:00
    @matrix1010 #4 老哥看得很透彻哇,是啊一些底层库可能用到的人很多,都基本都是比较靠上的用户层的库的依赖传递过来的,也不会有那么多人去看原理实现研究底层的实现,但是一旦出问题就会被疯狂抨击了。。。
    equationzhao
        6
    equationzhao  
       2023-09-20 00:45:22 +08:00   ❤️ 1
    围观大佬
    Kisesy
        7
    Kisesy  
       2023-09-24 01:25:42 +08:00
    这项目还不是直接内置你的原始代码,而是有些改动,比如 https://github.com/vitessio/vitess/blob/main/go/cache/theine/mpsc.go

    你也可以跟着更新一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3453 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:02 · PVG 19:02 · LAX 03:02 · JFK 06:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.