• 请不要在回答技术问题时复制粘贴 AI 生成的内容
layman3612
V2EX  ›  程序员

尝试写了个内网穿透,测了下效果。不知道这样测试合理吗

  •  
  •   layman3612 · Jul 29, 2024 · 4663 views
    This topic created in 660 days ago, the information mentioned may be changed or developed.
    环境都是在本地的 wsl 内做的测试

    1.起了个 nginx docker 8888 端口,纯 nginx 无其他服务



    2.开启内网穿透 8888 映射到 9999 (都是本地的端口)



    3.wrk 测试 wrk -t 10 -c 100 -d 5s --latency http://172.20.191.214:9999



    不知道这样测试合理吗,想把内网穿透作为商业项目的一个功能,一般需要达到什么样的性能。
    21 replies    2024-08-30 10:24:58 +08:00
    Lanzhijiang
        1
    Lanzhijiang  
       Jul 29, 2024 via Android
    和真实网络环境偏差较大,也没有测试具体应用负载下的性能,这样的测试是不行的
    layman3612
        2
    layman3612  
    OP
       Jul 29, 2024
    @Lanzhijiang 假如真实环境测试的话 都是 特定场景,比如视频网站 。如何让其他场景 比如电商 有参考意义呢。是否简单场景测试 比较更好点?
    canyue7897
        3
    canyue7897  
       Jul 29, 2024 via Android
    直接业务场景搭载一个 frps
    你只需要写个前端
    控制下就行了
    或者写一个编辑器
    Vkery
        4
    Vkery  
       Jul 29, 2024
    自用还行 开放出去有法律风险吧。。。挂菠菜、颜色网站你咋办
    layman3612
        5
    layman3612  
    OP
       Jul 29, 2024
    @Vkery 类似于 frp 这就是个工具
    jifengg
        6
    jifengg  
       Jul 29, 2024
    你可以在测试一下 8888 端口,假设 8888 你已经调优好了达到性能上限,那么我觉得,穿透的 9999 得到 8888 的 95%以上才能商用。
    layman3612
        7
    layman3612  
    OP
       Jul 29, 2024
    @jifengg 这个貌似很难
    layman3612
        8
    layman3612  
    OP
       Jul 29, 2024
    @jifengg 假如本身就是很简单的应用,比如 nginx 它自身就类似于是一个网络中间件, 加上内网穿透,就会在它基础上多转发几次,肯定对它原有性能造成很大的影响。 但如果是比较复杂的应用,内部有一些计算和 IO 操作之类的, 这种影响就比较小, 可以达到 95%
    mixuxin
        9
    mixuxin  
       Jul 29, 2024
    现在好多人在尝试 用 IPv6 来实现直连,达到穿透目的,可以试试?
    qping
        10
    qping  
       Jul 29, 2024 via Android
    怎么实现的分享下么~
    jifengg
        11
    jifengg  
       Jul 29, 2024
    @layman3612 或者你可以用 frps 做标准。frps 是 golang 写的,性能不错。能达到 frps 的 95%也可以
    layman3612
        12
    layman3612  
    OP
       Jul 29, 2024
    @jifengg 会测得,只要模型简单 超过 frp 也问题不大
    layman3612
        13
    layman3612  
    OP
       Jul 29, 2024
    @mixuxin 没研究过
    layman3612
        14
    layman3612  
    OP
       Jul 29, 2024
    @qping golang 原理网上很多 就是字节流的相互拷贝
    marquina
        15
    marquina  
       Jul 29, 2024   ❤️ 1
    “想把内网穿透作为商业项目的一个功能,一般需要达到什么样的性能。”
    感觉想法本身就便了。商业项目关心的是能解决什么样的问题、创造什么样的业务价值,至于性能损耗是 5%还是 3%不是关键。
    至少我本人使用内网穿透时,关心的是易用性、稳定性,而不是 5%或 3%的性能损耗。
    marquina
        16
    marquina  
       Jul 29, 2024
    @marquina #15 “感觉想法本身就便了。” -》 “感觉想法本身就偏了。”
    Jinnrry
        17
    Jinnrry  
       Jul 29, 2024 via Android
    我以前写过,后来实际使用的时候发现会被拦截,国内偶尔被拦截,国外随时都会被拦截,然后就放弃了
    layman3612
        18
    layman3612  
    OP
       Jul 29, 2024
    @marquina 你的思路是对的
    bugfan
        19
    bugfan  
       Jul 29, 2024 via iPhone
    前几年我写的的免安装客户端的没网穿透 。www.i996.me ,后来一直没怎么维护了,但是现在还有一些人在使用,我注重的是便捷性,可以参考下。😊
    flymeto
        20
    flymeto  
       Jul 30, 2024
    @bugfan 点个赞,你的这个我也用过了好几次
    Lanzhijiang
        21
    Lanzhijiang  
       Aug 30, 2024 via Android
    @layman3612 看你想要什么,是可行性还是更进一步了解性能贫瘠等。当然是越真实越好,而且肯定也有相关的工具的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1173 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 18:10 · PVG 02:10 · LAX 11:10 · JFK 14:10
    ♥ Do have faith in what you're doing.