V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Geon97
V2EX  ›  程序员

自己所在的公司有没有生产环境中使用 WebAssembly(WASM)

  •  
  •   Geon97 · 2 天前 · 3586 次点击

    WebAssembly ( WASM )的话题不像前几年那么多了,现在 ai 的话题是越来越多 WASM 现在是怎样的生态了?

    44 条回复    2025-09-30 15:47:21 +08:00
    ejin
        1
    ejin  
       2 天前
    有点不好意思

    没搞懂怎么用
    ejin
        2
    ejin  
       2 天前
    按说 vue 这种框架应该先用上吧,但是他们似乎都不用,那我就不知道怎么用了,问了 AI 也是云里雾里的。

    我只确定了一条,js 可以和 wasm 程序有交互,但是其他的就不了解了。
    dzdh
        3
    dzdh  
       2 天前
    感觉 api 请求参数加密啥的可以把加密密钥扔到 wasm 里。其他就不知道了。
    horizon
        4
    horizon  
       2 天前
    3D 、语音视频用的多
    danbai
        5
    danbai  
    PRO
       2 天前
    前几天刚发了 3.0
    masterclock
        6
    masterclock  
       2 天前
    试过几次了,没成功
    rabbbit
        7
    rabbbit  
       2 天前
    两种场景:
    1 前端需要高性能的场景,例如寻路、图像处理
    2 直接编译现有的 C++ 程序供前端使用
    manami
        8
    manami  
       2 天前
    游戏可能用的比较多,微信、抖音小程序可以用 WebAssembly 转
    Dawnnnnnn
        9
    Dawnnnnnn  
       2 天前
    云原生这边有在用,比如写一些 k8s 网关的插件啥的
    kzfile
        10
    kzfile  
       2 天前
    有用,解析一些我们的私有二进制格式
    andyskaura
        11
    andyskaura  
       2 天前
    有用,diy 的混淆和解密,webp 解码和组图
    caocong
        12
    caocong  
       1 天前
    直接没用过,用过 hash-wasm 这种组件
    coldmonkeybit
        13
    coldmonkeybit  
       1 天前
    只有装的依赖里面用到,直接用没有
    KagurazakaNyaa
        14
    KagurazakaNyaa  
       1 天前
    https://github.com/ffmpegwasm/ffmpeg.wasm
    应该有不少用这个做端侧编解码之类的
    Ketteiron
        15
    Ketteiron  
       1 天前   ❤️ 2
    开发/测试环境玩过,没啥意义
    对一些性能瓶颈在 js 本身的才有意义,一般是 2/3D 、音视频
    Geon97
        16
    Geon97  
    OP
       1 天前
    @andyskaura 可以把密钥放进去。增加 js 逆向的难度
    liuliuliuliu
        17
    liuliuliuliu  
    PRO
       1 天前
    我觉得当前 wasm 的最大问题是不能操作 dom ,也就是说操作 dom 还要用 js ,那也就是说还是无法拜托 js ,那意义就大打折扣了。
    sakuraT1
        18
    sakuraT1  
       1 天前
    弥知有个网页端 AR 好像就是 wasm ,请求这个一个包,里面暴露一些方法给客户端,AR 识别
    zhangyunlu80
        19
    zhangyunlu80  
       1 天前
    之前加密场景有用过,直接 调用 wasm (加密库),保证前端加密算法的绝对安全
    Parva
        20
    Parva  
       1 天前
    使用场景就跟安卓\IOS 用 C 写的库差不多吧
    lizy0329
        21
    lizy0329  
       1 天前
    合成海报也可以用
    Geon97
        22
    Geon97  
    OP
       1 天前
    @liuliuliuliu 是的不太友好,WASM 只能调用 JS ,通过 JS 操作 DOM ,前端的意义不大,但是如果吧密钥放入到 wasm 里要比 js 混淆更安全
    Tyaqing
        23
    Tyaqing  
       1 天前
    做前端 CPU 密集的需求会用到,比如我的图片本地压缩插件就用到 https://www.exportx.dev/

    然后一些应用 web 都会用到,比如 ffmpeg 压缩视频,剪映 web ,其实 web 端做 CPU 密集也只有 WASM ,没有其他可选
    crackidz
        24
    crackidz  
       1 天前
    wasi 我知道有不少公司在用
    bingfengfeifei
        25
    bingfengfeifei  
       1 天前
    C 库,Golang 中使用 wazero 通过 wasm 调用。 消除 CGO
    zhcode
        26
    zhcode  
       1 天前
    用过 wasm 解析 pdf 的三方依赖
    xiaojie668329
        27
    xiaojie668329  
       1 天前
    五六年前就在用了,加密、图像识别和处理
    mightybruce
        28
    mightybruce  
       1 天前
    wasm 前端已经出现在各个公司了比如 ffmpeg wasm , opencv 浏览器 wasm , 后端 wasi 运行时 以及 wasm 还在变化,这个月出现了 wasm 3.0 了,
    现在云原生网关大多支持 wasm

    wasm 运行时是否能代替容器还不一定,但是在云原生 cncf 中已经有众多项目了

    https://landscape.cncf.io/?group=wasm
    ragnaroks
        29
    ragnaroks  
       1 天前
    最常见的就是客户端视频处理了,另外就是页游( unity3d ),其它方面个人确实没看到大规模应用的
    eagleoflqj
        30
    eagleoflqj  
       1 天前 via iPhone
    公司没在用,但我自己很感兴趣
    把 fcitx5 做成了 wasm 在浏览器跑 https://github.com/fcitx-contrib/fcitx5-online
    也在往 ChromeOS 移植 https://github.com/fcitx-contrib/fcitx5-chrome
    subframe75361
        31
    subframe75361  
       1 天前 via Android
    一些 Local First 的应用会用到 sqlite-wasm 或者 pglite
    AoEiuV020JP
        32
    AoEiuV020JP  
       1 天前
    算有?音视频会议的证书验证相关是 go 语言写的闭源,web 前端和接口 nodejs 是加载的 go 编译出的 wasm ,
    abelmakihara
        33
    abelmakihara  
       1 天前
    正儿八经看过有用的网页也就是上传视频处理的了 还是个人网页
    94
        34
    94  
       1 天前
    需要用到的早就用上了,没有用上的也不会应为发布了 3.0 就上 WASM 。
    mundane
        35
    mundane  
       1 天前
    有用啊,比如用 ffmpeg.wasm 在浏览器端进行音频格式的转换,我开发的一个 https://opsutomp3.io 就是用了这个
    mundane
        36
    mundane  
       1 天前
    @mundane 不好意思,是 https://opustomp3.io
    chenluo0429
        37
    chenluo0429  
       1 天前 via Android
    wasm 在生产端有很多重大的问题
    1. 低版本可用性差,在 chrome98 及以下版本上,wasm 代码编译展开的速度非常慢
    2. wasm 虽然运行效率高,但是和 js 之间传递数据需要拷贝,低效且占用双份内存
    3. wasm 内存区块一旦分配无法回收,提案通过遥遥无期。即使通过并且实装,大部分设备支持 gc 我估计十五年内都不一定会实现
    hengshenyu
        38
    hengshenyu  
       1 天前 via Android
    以前都是用 wasm 成品库,最近把一个项目中的一个计算密集的函数转到了 wasm ,性能提升了两到三倍
    skiy
        39
    skiy  
       1 天前 via iPhone
    运行时有点多,不知道哪个好用。
    yyj08070631
        40
    yyj08070631  
       23 小时 49 分钟前
    @Geon97 其实一样的,wasm 包是公开的,只要逆向一下 js 的调用逻辑,一样可以输出正确结果,只是不知道 wasm 的内部逻辑而已
    visper
        41
    visper  
       23 小时 11 分钟前
    在前端算 MD5 的时候,对大一点的文件,使用 wasm 的比 js 库的计算 md5 要快好多。
    xiaoxiuaoliang
        42
    xiaoxiuaoliang  
       22 小时 47 分钟前
    @visper 大文件一般采取采样 MD5 的策略。注意,绝大多数情况,我们都不必追求 100%的准确性(事实上连 md5 算法自身都无法保证 100%)
    ligolas
        43
    ligolas  
       22 小时 38 分钟前
    除了前端使用,wasm 还能在 nodejs 中使用。因此理论上,wasm 给 nodejs 提供了除 addon 之外的另一套集成自定义开发模块的选项。当然具体场景用哪个好像还是要分情况,看到过有些讨论,但是都并不深入。
    sharpy
        44
    sharpy  
       22 小时 21 分钟前
    做一些图像图形处理的时候,修改了 skia 的 canvaskit ,用起来还可以
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2113 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 06:08 · PVG 14:08 · LAX 23:08 · JFK 02:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.