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

阿里的 Java 这么烂吗?最近用一个服务 Java 调用比 Python 慢一倍,官方说代码问题

  •  
  •   zuiyue123 · 2024-07-19 10:33:04 +08:00 · 6453 次点击
    这是一个创建于 386 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近试用阿里的一款大模型语音识别服务,发现 java 调用接口比 python 慢一倍,发了工单后,售后说确实是 java 代码问题

    40 条回复    2024-07-21 21:53:48 +08:00
    vacuitym
        1
    vacuitym  
       2024-07-19 10:36:36 +08:00
    调用慢感觉是客户端问题,是用的 sdk 的问题吗
    sagaxu
        2
    sagaxu  
       2024-07-19 10:38:33 +08:00   ❤️ 2
    你让我想起阿里的 KPI 项目,slowjson
    NessajCN
        3
    NessajCN  
       2024-07-19 10:39:26 +08:00
    这还不简单,你照着它 Python 库的调用方法自己手搓一份 Java 调用方法
    zuiyue123
        4
    zuiyue123  
    OP
       2024-07-19 10:40:22 +08:00
    @vacuitym 都是用的官方提供的 sdk ,和代码,他们自己也发现这个问题了
    yb2313
        5
    yb2313  
       2024-07-19 10:43:01 +08:00
    我还以为 py 的 sdk 就够烂的了, 他那个翻译接口,唉
    zuiyue123
        6
    zuiyue123  
    OP
       2024-07-19 10:50:56 +08:00
    @yb2313 世界就是草台班子
    Kumo31
        7
    Kumo31  
       2024-07-19 10:51:57 +08:00
    云厂商这些 SDK 基本都是生成或外包随便写的,根本没人去管,质量差的很
    julyclyde
        8
    julyclyde  
       2024-07-19 10:52:55 +08:00
    @sagaxu 阿里那个是 fastjson 吧?
    我听说只是 bug 多,但是性能真的挺好?
    Daniel17
        9
    Daniel17  
       2024-07-19 10:57:46 +08:00
    @julyclyde 确实是不错,就是老要升级
    matrix1010
        10
    matrix1010  
       2024-07-19 11:03:36 +08:00   ❤️ 2
    作为一个程序员,说慢的话最好放上数据/benchmark/测试环境/测试 SDK ,就一个截图不太合适。另外你半夜 12 点问售后工程师,人家可能只是敷衍你一下好早点睡觉
    lambdaq
        11
    lambdaq  
       2024-07-19 11:08:22 +08:00
    py 的库是 .so ,然后 java 的没用上 jni ?
    thoo61871
        12
    thoo61871  
       2024-07-19 11:09:00 +08:00   ❤️ 3
    居然能在线实时反馈给售后,还是服务太好了太卷了。老外的服务得发邮件等 1-2 个工作日。
    ufan0
        13
    ufan0  
       2024-07-19 11:16:37 +08:00
    去过好几个项目组看代码,不少代码,确实乱。(看过提交记录,自有写的)

    首先自己的 Java 规范是不遵守的:
    1. 注释不按照 JavaDoc 玩,全是波浪线;
    2. 代码格式化使用 Eclipse 格式化插件,和自己发的规范都存在一定出入。

    其次代码为了写而写,很多比较简单的业务,为了‘’秀技术‘’加入了一堆你在技术框架中才能看到的源码,说个都容易理解的: Spring 注解校验器,直接基于 Hibernate 定制,加上特殊 hook ,以及统一包装异常,怎么着 500 行应该够了。
    人家为了这个功能起了一个新项目 1 万多行代码。随手看几个类都是血压高的没有意义的东西,而且也没有支持新的功能,甚至我说的 hook 和异常包装都没有,仅只有类似 @NotNull 的功能。

    稍微有些代码修养的人都看不下去,实在是不敢恭维啊。
    sagaxu
        14
    sagaxu  
       2024-07-19 11:18:32 +08:00   ❤️ 1
    @julyclyde

    甲:12313123*123132=?
    乙:2
    甲:你这也不对啊
    乙:你就说快不快吧
    debuggerx
        15
    debuggerx  
       2024-07-19 11:26:56 +08:00
    直接看 http 调用的文档自己手搓,比他们提供的 sdk 高效得多,我对接很多家的云服务都是这么干的
    chenqh
        16
    chenqh  
       2024-07-19 11:33:14 +08:00
    java 再怎么弄都不应该比 python 慢吧..
    feiyan35488
        17
    feiyan35488  
       2024-07-19 11:36:22 +08:00
    @julyclyde 抛开那些安全漏洞不谈,你就说快不快吧
    Nitsuya
        18
    Nitsuya  
       2024-07-19 11:37:43 +08:00
    跟阿里的打了很多年交道.阿里的东西是这样的.习惯就好.真的很坑..
    julyclyde
        19
    julyclyde  
       2024-07-19 11:44:54 +08:00
    @feiyan35488
    @sagaxu
    那攻击点也不应该是 fast 这个词吧
    阴阳怪气总得有个方向
    liaojl
        20
    liaojl  
       2024-07-19 12:09:26 +08:00 via iPhone
    歪个楼,慢一倍是个错误的表达。
    potatowish
        21
    potatowish  
       2024-07-19 12:17:52 +08:00 via iPhone   ❤️ 1
    @matrix1010 一分钟不到就核实了……
    Pantheoon
        22
    Pantheoon  
       2024-07-19 13:13:31 +08:00
    @sagaxu
    It's BugJson,instead of slowJson
    skuuhui
        23
    skuuhui  
       2024-07-19 13:38:03 +08:00
    python 可能调用 c 模块吧。
    zuiyue123
        24
    zuiyue123  
    OP
       2024-07-19 13:41:59 +08:00
    @potatowish 有没有可能我只是截了后半部分呢?怎么可能晚上 12 点才去问?
    zuiyue123
        25
    zuiyue123  
    OP
       2024-07-19 13:44:44 +08:00
    @skuuhui SDK 封装的问题,理论都是调用同一个接口,计算部分都是他们的服务器上
    vacuitym
        26
    vacuitym  
       2024-07-19 13:46:55 +08:00
    @zuiyue123 别用他们的 sdk ,他们的 sdk 通常不怎么样,依赖还一堆乱七八糟的东西。按文档自己实现比较好
    ruanimal
        27
    ruanimal  
       2024-07-19 13:48:51 +08:00
    @sagaxu bugjson
    laikick
        28
    laikick  
       2024-07-19 14:04:14 +08:00   ❤️ 1
    远离阿里这家公司.
    bitmin
        29
    bitmin  
       2024-07-19 14:16:21 +08:00
    #26 确实,我都是按文档自己实现,简洁多了

    文档看不清楚的地方,参考 sdk
    realrojeralone
        30
    realrojeralone  
       2024-07-19 14:47:41 +08:00
    @sagaxu #2 养活了不少安全从业者
    kenvix
        31
    kenvix  
       2024-07-19 14:53:10 +08:00
    @julyclyde #8 性能并不好,远不如 SIMDJson ,也不如 kotlinx.serialization
    bug 还都是 RCE 级别的
    ragnaroks
        32
    ragnaroks  
       2024-07-19 15:22:20 +08:00
    本来想写都用 java 了还在意性能,看完发现是和 python 比,那确实离谱
    zxkxhnqwe123
        33
    zxkxhnqwe123  
       2024-07-19 15:59:43 +08:00
    阿里的文档是真的烂 每次都要找很久 sdk 也乱糟糟的,各种版本。
    反观腾讯的文档是越来越舒服了。
    wolffy
        34
    wolffy  
       2024-07-19 16:28:56 +08:00
    再烂也不妨碍他们工资高,以前老家介绍的一个华科大硕士在阿里做 java 的女孩子,工作三年在杭州买了房,聊了两句问我什么学历,我说大专,然后 GG ,媒人那边打电话过来说不聊了,哈哈。
    javaisthebest
        35
    javaisthebest  
       2024-07-19 16:30:31 +08:00
    很好奇 这是能有多烂呢 sdk 基本上不和后端服务通信 代码全部走本地内存。。
    julyclyde
        36
    julyclyde  
       2024-07-19 18:00:11 +08:00
    @kenvix 明白了。谢谢
    ShuWei
        37
    ShuWei  
       2024-07-19 18:39:53 +08:00
    阿里吧,好的东西是真好,烂的东西是真烂,少量牛逼的人在为大量草包撑起一片天空,习惯就好。不过,千万别觉得这只是阿里的问题,其实整个世界都是这样的。

    不行就手搓吧
    jackOff
        38
    jackOff  
       2024-07-20 00:15:46 +08:00 via Android
    python 缺点是 gil ,但是最新的 python 已经大幅改善这个问题,并且其基础库很多都是基于 C 的实现,所以写 python 时不要脑抽用 python 写算法,要么自己用 C 写算法给 python 调用,要么就用 python 官方基础语法写,这样子基本解释运行时都是走 C 基础库运行,效率其实是不差的
    jackOff
        39
    jackOff  
       2024-07-20 00:19:19 +08:00 via Android
    所以想搞算法的同学下次面试官一定让小伙子手搓 C 和 C++,其他语言比如 Java 和 python 这种肯定是不适合写算法的,调包语言干算法基本就是在做减速运动,搞 AI 的算法为啥用 python 多,纯粹是写起来简单,时间这种东西对他们来说不算啥,能训练出结果集就行
    nyxsonsleep
        40
    nyxsonsleep  
       2024-07-21 21:53:48 +08:00
    @wolffy #34 你也去考个硕士气死她
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2901 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:41 · PVG 15:41 · LAX 00:41 · JFK 03:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.