上周有同学提到保存 Nexus 历史镜像的问题,我来详解一下 Nexus 社区版本如何选择? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
eryajf
V2EX    程序员

上周有同学提到保存 Nexus 历史镜像的问题,我来详解一下 Nexus 社区版本如何选择?

  •  
  •   eryajf
    eryajf 8 天前 1861 次点击

    前贴: t/1186284

    看到贴文内容之后,我针对各个关键节点版本做了部署测试,得出如下结论:

    从 3.77.0 版本开始,组件数上限 10w ,日请求上限 20w 。从 3.87.0 版本开始,组件数上限降为 4w ,日请求数降为 10w 。

    版本详细介绍,以及上限验证结果,详见博文: https://wiki.eryajf.net/pages/b6b711/

    除了记录了对应版本,我还针对历史镜像做了归档,有需要的同学可以自取。

    15 条回复    2026-01-20 10:00:11 +08:00
    kyonn
        1
    kyonn  
       8 天前
    感谢楼主的详细测试.
    kyonn
        2
    kyonn  
       8 天前
    限制逐渐锁紧没什么, 关键是升级了不让回退, 非常麻烦.
    eryajf
        3
    eryajf  
    OP
       8 天前
    @kyonn #2 我还没测试过回退,版本相距不远的话,应该可以的吧?回头我也测试下
    kyonn
        4
    kyonn  
       8 天前
    @eryajf 验证用的是内置 H2 数据库吗? 外置 postSQL 不知道有没有区别.
    66z
        5
    66z  
       8 天前
    有其他的开源方案可以代替吗
    newaccount
        6
    newaccount  
       8 天前
    “如果能够预见规模不会很大,那么可以考虑选择 3.86.3”

    这个不存在,因为本地缓存的 jar 包版本也会被计算到 components 中
    当初我遇到的问题,就是在使用一段时间之后,随着 spring 引用版本的更新,这个数量在 3.8 万,接近 3.9 ,原本距离 10w 的上限很远,大可放心使用,但更新之后的 4w 限制导致这个几乎立即不可用( spring boot 4.0 的更新导致很多包需要缓存)
    以这个限制的事实为基础,有充分理由相信 sonatype 就是通过统计数据,故意设置了一个让你用的很难受的数值作为上限来强迫购买
    降级更不可能,镜像启动失败,明确告诉必须使用匹配的版本,也许这个值可以在数据库中找一下,但就能够做出这种事的态度来看,很有可能通过热更新让这个失败
    所以,要么使用旧版本,并且希望 sonatype 别在干出什么不做人的事儿让旧版本失效(参考 bitnami 能干出的狗事),要么赶紧找替代(我还没找到)
    newaccount
        7
    newaccount  
       8 天前
    @newaccount #6 另外,由于以后不能升级,那么一旦发现旧版本的技术栈中出现 CVE 漏洞,或者由于技术更新、升级等因素导致旧版本不可用,那时候啥都做不了
    就目前的情况来看,继续使用 nexus 的未来风险极大
    kyonn
        8
    kyonn  
       8 天前
    @newaccount bitnami 干过什么?
    eryajf
        9
    eryajf  
    OP
       8 天前
    @66z 开源软件里,各个单语言栈领域的能找到,但能和 nexus 聚合能力比肩的,没有
    eryajf
        10
    eryajf  
    OP
       8 天前
    @newaccount #6 “如果能够预见规模不会很大,那么可以考虑选择 3.86.3” 这句想表达的意思是这个版本是最后一个 10w 上限的版本,再往前进一个版本,就到 4w 了,如果知道不会超过 10w ,那选择这个版本就够用。
    redial39
        11
    redial39  
       8 天前
    我在 nexus 前面架了一个 ng,用来本地缓存请求,每日请求从 20w 降到 7k,目前用下来没有什么异常,但是组件的限制是没办法破除的,唯一能想到的办法就是分散 nginx,用不同的二级域名来分流不一样的 repo 请求
    redial39
        12
    redial39  
       8 天前
    @redial39 分散 nexus
    eryajf
        13
    eryajf  
    OP
       8 天前
    @redial39 #11 这个操作太复杂了,虽然可行
    Foxkeh
        14
    Foxkeh  
       8 天前
    很用心的文章,还有实践验证。

    我也是前不久 12 月中手贱升级到最新版后发现首页统计限制,而且降级似乎不行,好在私有包不多大多是代理缓存的,咨询了一下 GPT ,索性重新部署了 3.76.1 版本养老
    eryajf
        15
    eryajf  
    OP
       7 天前
    @Foxkeh 感谢,如果私包不多的情况下,并且没有内部包的情况下,重建的成本就还好
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3269 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 115ms UTC 00:36 PVG 08:36 LAX 16:36 JFK 19:36
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86