一个很奇怪的自部署 gitea 首页冷加载 慢的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
lymanbernadette6
V2EX    NAS

一个很奇怪的自部署 gitea 首页冷加载 慢的问题

  •  
  •   lymanbernadette6 194 天前 1506 次点击
    这是一个创建于 194 天前的主题,其中的信息可能已经有所发展或是发生改变。
    gitea.db --> 大小在 150M 左右

    前面套了一个 Nginx:
    ```
    server {
    listen 443 ssl http2;
    server_name git;

    access_log /dev/null;

    ssl_certificate x;
    ssl_certificate_key x
    ssl_trusted_certificate x;

    ssl_session_timeout 5m;
    ssl_session_cache shared:MozSSL:10m;
    ssl_dhparam /etc/ssl/dhparam.pem;
    ssl_protocols TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
    ssl_prefer_server_ciphers off;
    ssl_stapling on;
    ssl_stapling_verify on;
    client_max_body_size 300m;

    error_page 497 https://$host:$server_port$request_uri;

    location / {
    proxy_pass http://localhost:8888;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;


    # http://nginx.org/en/docs/http/websocket.html
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    # proxy_redirect off;
    }
    }
    ```
    查看 gitea 日志如下: 提示 slow route

    ```
    gitea | 2025/04/10 18:23:15 ...eb/routing/logger.go:102:func1() [I] router: completed GET /favicon.ico for 172.27.0.1:56048, 301 Moved Permanently in 11.8ms @ misc/misc.go:46(web.Routes.StaticRedirect)
    gitea | 2025/04/10 18:23:19 ...eb/routing/logger.go:102:func1() [I] router: completed GET /user/login?redirect_to=%2f for 172.27.0.1:45376, 200 OK in 80.6ms @ auth/auth.go:179(auth.SignIn)
    gitea | 2025/04/10 18:23:21 ...eb/routing/logger.go:102:func1() [I] router: completed POST /user/login for 172.27.0.1:45382, 303 See Other in 350.8ms @ auth/auth.go:192(auth.SignInPost)
    gitea | 2025/04/10 18:23:25 ...eb/routing/logger.go:68:func1() [W] router: slow GET / for 172.27.0.1:45396, elapsed 3856.4ms @ web/home.go:32(web.Home)


    gitea | 2025/04/10 18:23:52 ...eb/routing/logger.go:102:func1() [I] router: completed GET / for 172.27.0.1:45396, 200 OK in 30985.7ms @ web/home.go:32(web.Home)
    ```
    gitea 配置基本为默认。

    不知道有没有遇到相同情况的 V 友。看了一圈没看出问题所在。。
    8 条回复    2025-04-28 23:15:18 +08:00
    Pethidine
        1
    Pethidine  
       194 天前
    没遇到过,我的首页很快,但是因为有几千个仓库,而且每天大量更新,所以登录后的首页会加载个几秒
    moyuge
        2
    moyuge  
       194 天前
    升级最新版本 老版本没加索引导致很慢 数据库切 mysql 或者 pg
    lymanbernadette6
        3
    lymanbernadette6  
    OP
       194 天前
    @moyuge #2
    感谢回复,
    目前已经是最新版本。
    数据库文件大小这个量级 sqlite 与 pg mysql 性能差距会比较大吗?
    我仓库只有几十个,只有冷加载比较慢,登录进去之后都挺快。
    lymanbernadette6
        4
    lymanbernadette6  
    OP
       194 天前
    @Pethidine #1 我的仓库只有几十个,基本也是经常更新。 只有冷加载比较慢,登录进去之后都挺快。 所以才比较奇怪
    ExplodingDragon
        5
    ExplodingDragon  
       193 天前   1
    https://github.com/go-gitea/gitea/pull/33981 action 表导 500 万条记录时会遇到,这个 PR 解决了。要等 1.24 问题出在 select count 其实很慢,当数据库表超过 500 万记录左右时。

    (其实可以去 discord 、国内官方群或者 gitea 自家的论坛咨询的,v2ex 问这个属于是随缘了)
    ExplodingDragon
        6
    ExplodingDragon  
       193 天前
    ( 群里复制的,好像复制多了
    lymanbernadette6
        7
    lymanbernadette6  
    OP
       191 天前
    @ExplodingFKL #5 谢谢大佬,其实问题还有个点我忽略了: 我通过 Nginx 转发+域名访问会经常遇到这种首页加载慢的情况, 而直接使用 IP+端口缺几乎没遇到过。
    所以我贴上了 Nginx 配置,更多的怀疑是否是 Nginx 配置问题,或是 gitea 对反代后的域名判断有问题。
    不过使用 AI+我自己的经验来看又没看出问题。


    lymanbernadette6
        8
    lymanbernadette6  
    OP
       176 天前
    经过一系列的排查,发现是 action 表过大,大约有 700W 行的数据,这个用于记录热力图。 可以直接通过: DELETE FROM action;
    清空。
    /div>
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5081 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 03:57 PVG 11:57 LAX 20:57 JFK 23:57
    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