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

其实不会有人真的会用 Nodejs 去写后端

  •  
  •   Mark24 · 2022-08-23 22:32:36 +08:00 · 4489 次点击
    这是一个创建于 583 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近的观察:"其实不会有人真的会用 Nodejs 去写后端"

    后端拥有很多选择成熟的 Java 、时髦的 Golang 、到处都是的 Python 、从 Helloworld 到 IPO 的 Ruby……成熟方案和 lib 随手拿来。

    作为后端同学,他们根本不会选择 Node.js 一个语法到处飞,标准库完成度很低的东西。

    只有前端会用,而且一般做 BFF 。而 BFF 用啥这件事取决于谁做,前端做会考虑 Nodejs 。如果是后端做,依然不会用 Nodejs 和前面理由一致。所以 Nodejs 只是一个前端偏好的东西。于是产生了一个受限循环,最大的用处是跑 webpack 打包工具。现在可能 Rust 重造比 Nodejs 的要好很多。

    44 条回复    2023-07-05 13:52:41 +08:00
    Mark24
        1
    Mark24  
    OP
       2022-08-23 22:34:23 +08:00
    有多少明星应用,使用 Nodejs 呢?我也很好奇。

    Nodejs 看似轮子多,大多数是其他语言框架的复刻。生态上还是有差距。

    不引战,欢迎交流
    crysislinux
        2
    crysislinux  
       2022-08-23 22:37:22 +08:00 via Android   ❤️ 2
    什么叫真的用 nodejs 写后端。什么叫真的程序员。什么叫真的 xxx 。这不是纯引战是什么。。
    Chaidu
        3
    Chaidu  
       2022-08-23 22:40:10 +08:00
    我一个写了 10 年 PHP 的后端程序员现在都改用 Node.js 写后端了
    estk
        4
    estk  
       2022-08-23 22:42:51 +08:00 via Android
    对我来说用 nodejs 写后端相当于省去新语言学习成本,很多代码还前后通用
    vance123
        5
    vance123  
       2022-08-23 22:54:03 +08:00 via Android   ❤️ 10
    农民开始夸耀他的金锄头
    Mr54
        6
    Mr54  
       2022-08-23 23:01:10 +08:00 via Android
    不然呢,前端能用前端的代码写个后端又怎么招惹谁了吗,难道写个后端就非得用 Java Python rust ?
    xmumiffy
        7
    xmumiffy  
       2022-08-23 23:07:27 +08:00 via Android
    c 系及 java Android 开发,我就选了 Node.js 开发后端,再之前没有 js 开发经历
    fsdrw08
        8
    fsdrw08  
       2022-08-23 23:10:39 +08:00 via Android
    因为 node module ,我甚至不想用 nodejs 写前端
    wangkun025
        9
    wangkun025  
       2022-08-23 23:12:57 +08:00
    会。
    jorneyr
        10
    jorneyr  
       2022-08-23 23:37:26 +08:00
    网传不是说淘宝页面的数据是使用 Nodejs 聚合的吗?
    Mark24
        11
    Mark24  
    OP
       2022-08-23 23:40:30 +08:00 via Android
    @fsdrw08 确实太大了。大得离谱
    musi
        12
    musi  
       2022-08-24 07:16:26 +08:00
    咋,后端用个语言还能用出优越感?
    Mark24
        13
    Mark24  
    OP
       2022-08-24 07:49:10 +08:00 via Android
    @musi 理解出优越感😢只能说现存的东西比较方便是习惯性选择
    christin
        14
    christin  
       2022-08-24 08:15:44 +08:00 via iPhone
    so ?
    前端用 js 写后端怎么了?
    你又不给人发钱你管人家用啥呢
    musi
        15
    musi  
       2022-08-24 09:06:02 +08:00
    @Mark24 #13 你要不在 v 站搜一下,用 GoLang 写业务,Python 写后端,这都月经贴了
    虽然用 Nodejs 写后端是比较少,但不代表没有
    free9fw
        16
    free9fw  
       2022-08-24 09:08:31 +08:00
    主要是 node 性能太差了
    dreasky
        17
    dreasky  
       2022-08-24 09:17:50 +08:00
    我就用 node 写公司内部系统的后端,不需要性能,需求随意改简直不要太爽
    wanguorui123
        18
    wanguorui123  
       2022-08-24 09:30:07 +08:00
    我们公司的大型商业系统后端就是 nodejs 写的
    lzgshsj
        19
    lzgshsj  
       2022-08-24 09:43:49 +08:00   ❤️ 2
    要快有 fastify ,要简单有 express ,koa ,要工程化有 nestjs ,不想看 node_modules 黑洞有 pnpm ,性能问题除了大公司,中小企业的业务有多少会达到 nodejs 瓶颈的,这时候为什么不能用 nodejs ?
    有一点那是没错,会其他后端 java ,go 之类的那是本来就没必要用 nodejs 。一般都是前端或者其他语言的,要写后端基本上就会考虑 nodejs 更多。
    你说如果让干全栈,ts 一把梭有什么问题?
    marcosteam
        20
    marcosteam  
       2022-08-24 09:54:38 +08:00
    语言优越党又来了
    xioxu
        21
    xioxu  
       2022-08-24 10:01:20 +08:00
    @lzgshsj 哈哈 我属于会 java golang 这些,但一些我单干的项目还是会选择使用 nodejs , 开发上线速度太快了,真的,论起写 web API ,没有哪个语言比 js 更方便,包括但不限于 python,java,go.
    debuggerx
        22
    debuggerx  
       2022-08-24 10:01:56 +08:00
    眼界太窄
    hronro
        23
    hronro  
       2022-08-24 10:26:12 +08:00   ❤️ 1
    这不就是 Google 一下的事?

    Mark24
        24
    Mark24  
    OP
       2022-08-24 10:27:20 +08:00
    @wanguorui123 轮子都自己造么。商业数值计算方面使用 npm 的第三方 lib ?
    Mark24
        25
    Mark24  
    OP
       2022-08-24 10:35:28 +08:00
    @marcosteam 有没有一种可能是想了解 Nodejs 国内真实的使用情况? 有什么优越不优越的。

    选择 Nodejs 而不用现成的,是基于什么原因呢?更像是这类的。

    如果是,我是前端,我只会 JS ,这种我觉得比较没意义。
    ChrisV5
        26
    ChrisV5  
       2022-08-24 10:58:34 +08:00
    我司日 api 请求在 2 亿+,后端是 nodejs
    ChristianChen
        27
    ChristianChen  
       2022-08-24 11:01:27 +08:00
    看了下 datadog 公布的数据,单看 AWS Lambda ,node 占比很高,而且 60%的大型企业部署会使用 3 种以上语言。
    这又不是的单项选择
    wanguorui123
        28
    wanguorui123  
       2022-08-24 11:08:35 +08:00
    @Mark24 框架肯定是自己造的啊,nodejs 开源的库一点都不好用啊,计算库用 Mathjs 就够了,nodejs 的性能非常不错,只要不要出现大数据量的死循环之内的基本上不会出现大问题,配合 PM2 基本上可以规避宕机问题
    czzhengkw
        29
    czzhengkw  
       2022-08-24 11:11:41 +08:00
    又一个优越党,自己没能力用好一个工具,就觉得这个工具是个垃圾

    一顿无依据批判之后,又说我不是来引战的……

    这标题,这内容,真的是来交流的吗?
    BeautifulSoap
        30
    BeautifulSoap  
       2022-08-24 11:15:34 +08:00
    然后 LZ 用了下 AWS ,然后发现 AWS 基本什么服务 node.js 都是第一梯队提供支持的。而且 node.js 和 Lambda 的相性还挺不错
    mxT52CRuqR6o5
        31
    mxT52CRuqR6o5  
       2022-08-24 11:18:09 +08:00
    CRUD 一般都是 io 密集场景吧,比起语言本身的性能瓶颈会先撞上数据库 io 的性能瓶颈,语言跑得快慢其实影响不大,python 、php 都比 node 慢不一样有人用
    cheneydog
        32
    cheneydog  
       2022-08-24 11:18:35 +08:00
    我很看好后台用 js , 目前主要是 nodejs ,也不一定非是 nodejs 。
    ngloom
        33
    ngloom  
       2022-08-24 11:26:52 +08:00
    公司里的事情 JS 一个语言前后端都搞定了。。
    Mark24
        34
    Mark24  
    OP
       2022-08-24 11:26:57 +08:00
    @czzhengkw 有没有可能表达的是 nodejs 不是第一选择。也可以不必是前端的第一选择呢。
    Mark24
        35
    Mark24  
    OP
       2022-08-24 11:27:47 +08:00
    @wanguorui123 同感。node 自己不错。就是包质量层次不齐。得自己做一部分工作。
    7gugu
        36
    7gugu  
       2022-08-24 11:38:56 +08:00 via iPhone
    nodejs 可以无缝切换 js ,怎么就不能是前端的第一选择?光是语言无缝切换这一点,就已经节约大量资源成本了。而且大多数让前端来负责的后端服务,也用不到多高的性能,快速出货才是大家的第一目标。
    houshuu
        37
    houshuu  
       2022-08-24 11:52:04 +08:00
    和 op 说的很类似, 我们公司虽然每个人都会用 ts, express (公司强制培训), 但是后端现在新起项目 90% 是 spring + (java, kotlin) 或者 go, node 项目基本用在公司内部服务上.
    对于一个项目来说, 编程语言的成本这东西个人感觉其实是很低的, 没有必要掐着一个 js 用, 也没必要特别追求新潮, 还是要从需求和维护性出发.
    wanguorui123
        38
    wanguorui123  
       2022-08-24 14:51:30 +08:00
    @Mark24 Node 最大的问题就是不好招人,而且工资要求比较 Java 高太多了和 Go 有的一拼
    czzhengkw
        39
    czzhengkw  
       2022-08-24 21:09:43 +08:00
    @Mark24 呵,那你这个表达能力真的是优秀呢……
    Mexion
        40
    Mexion  
       2022-08-24 23:50:35 +08:00 via iPhone
    @free9fw node 性能差? js 的性能在动态语言里是顶尖的
    Mexion
        41
    Mexion  
       2022-08-24 23:56:09 +08:00 via iPhone
    我只能说 go 都能写后端,node 为什么不能?何况 node 体验并不差,至少比 go 之流好多了。还有你这标题,其实不会有人真的会用 nodejs 去写后端,妥妥的陈述句,说的不容置疑一样。
    Mexion
        42
    Mexion  
       2022-08-24 23:58:46 +08:00 via iPhone
    作为天天写 node 和 go 的人,我只能说就写后端的体验上,go 不如 node 一根
    free9fw
        43
    free9fw  
       2022-08-27 20:48:35 +08:00
    @Mexion #40 对对对。你说的都对
    leisifung
        44
    leisifung  
       267 天前
    @lzgshsj 讲得好
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   951 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 21:18 · PVG 05:18 · LAX 14:18 · JFK 17:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.