V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zwyyy456
V2EX  ›  程序员

caddy 的内存占用异常高

  •  
  •   zwyyy456 · 314 天前 · 1922 次点击
    这是一个创建于 314 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先贴一下配置文件吧,对敏感信息做了一点处理:

    
    {
        order trojan before file_server
        servers :4443 {
            listener_wrappers {
                trojan
            }
        }
        log {
            output file /var/log/caddy/default.log {
                roll_size 10MiB
            }
        }
        trojan {
            caddy
            no_proxy
            users user tro_password
        }
    }
    tro.arm-br.example.com {
        reverse_proxy https://tro-arm-br.example.com:4443
    }
    naive.arm-br.example.com {
        reverse_proxy https://arm-br.example.com:443 
    }
    plex.arm-br.example.com {
        reverse_proxy arm-br.example.com:32400
    }
    qbit.arm-br.example.com {
        reverse_proxy arm-br.example.com:28080
    }
    cd2.arm-br.example.com {
        reverse_proxy arm-br.example.com:19798
    }
    status.arm-br.example.com {
        reverse_proxy arm-br.example.com:10182
    }
    
    :443, arm-br.example.com {
        tls [email protected]
        route {
            forward_proxy {
                basic_auth user naive_password
                hide_ip
                hide_via
                probe_resistance
            }
            file_server {
                root /usr/share/caddy
            }
        }
    }
    :4443, tro-arm-br.example.com {
    tls [email protected] 
        route {
            trojan {
                connect_method
                websocket
            }
            file_server {
                root /usr/share/caddy
            }
        }
    }
    
    :6443, arm-brv6.example.com {
        tls [email protected]
        route {
            forward_proxy {
                basic_auth user naive_password
                hide_ip
                hide_via
                probe_resistance
            }
            file_server {
                root /usr/share/caddy
            }
        }
    }
    

    caddy 一共使用了两个插件,一个是 caddy-trojan ,另一个是 naive-proxy 作者修改的 forwardproxy 插件,几个 vps ,凡是按照上面的配置文件部署了 caddy 的,内存占用都是起码 500-600M ,我 24g 的甲骨文 arm 机器,caddy 内存占用甚至达到了 5-6g ,问了下 chatgpt ,也没给出什么实质性的建议;重启 caddy 之后,内存占用倒是降下来了,但是似乎随着时间增长,占用会逐渐升高,请问要如何排查问题呢?

    13 条回复    2024-01-09 22:24:12 +08:00
    LeegoYih
        1
    LeegoYih  
       314 天前   ❤️ 1
    还得是 nginx
    lingex
        2
    lingex  
       314 天前 via Android
    两个插件分开各自测试吧。
    naive 那个有在用,docker 编译的,没有问题。
    lostberryzz
        3
    lostberryzz  
       314 天前
    早知道,还是 nginx
    duzhuo
        4
    duzhuo  
       313 天前 via Android   ❤️ 1
    早知道,还是 nginx
    zwyyy456
        5
    zwyyy456  
    OP
       313 天前
    @lingex 昨天晚上重启之后,运行了一天了,现在内存占用倒是挺低的。
    Nazz
        6
    Nazz  
       313 天前 via Android
    go 写代理服务器性能还是差点意思,不过方便拓展
    mephisto
        7
    mephisto  
       313 天前
    我的破站用 caddy 快三年了,1cpu 1G ram 稳定得很。大概率是你这 2 个插件的问题,关掉试试看。
    alsas
        8
    alsas  
       313 天前
    早知道 还是 nginx
    MoYi123
        9
    MoYi123  
       313 天前
    core dump 下来, 到本地的 goland 里看
    ShuA1
        10
    ShuA1  
       313 天前
    caddy 插件很容易出问题
    wheat0r
        11
    wheat0r  
       313 天前
    大概率插件问题,我觉得这点需求,还上升不到 golang 的性能怎么样
    zwyyy456
        12
    zwyyy456  
    OP
       313 天前
    推测可能和第一次启动时申请证书有关。
    roundgis
        13
    roundgis  
       313 天前 via Android
    用了幾年 沒有任何問題

    不過我不用插件
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   884 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 22:21 · PVG 06:21 · LAX 14:21 · JFK 17:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.