xiangwan
V2EX  ›  Node.js

我不信你不佛, nodejs 的这个包会让你惊镇

  •  
  •   xiangwan · Aug 10, 2019 · 8064 views
    This topic created in 2471 days ago, the information mentioned may be changed or developed.

    众所周知,nodejs 是单线程的,但是多线程的需求一直是有的,其实官方的 cluster 包可以让你‘多线程’(多进程)。

    文档在这里: http://nodejs.cn/api/cluster.html

    不要被误导,它不止可以用于 http。

    你试着用 cluster 来实现一个简单的 demo,大概 10 分钟?的 demo。main 和 worker 进程互相沟通一下(发送一个回合的消息)

    如果你做完 demo 后还觉得我是标题党,那么我,只能让你看下这个解释: https://github.com/dinsio/multi-process/blob/master/docs/why_nodejs_official_cluster_sucks_cn.md

    18 replies    2019-08-12 00:25:15 +08:00
    Jex
        1
    Jex  
       Aug 10, 2019
    你的想法就像:「为什么是 File.write ?难道不应该是 writeToFile 吗?」

    说起来都是 OOP 惹的祸
    xiangwan
        2
    xiangwan  
    OP
       Aug 10, 2019
    写 demo 才能切确的感受到这个标题
    ochatokori
        3
    ochatokori  
       Aug 10, 2019 via Android
    刚才第一次页面还在
    再点进去一次怎么就 404 了

    其实吧我觉得这个包也没有太大问题,可能我是 js 吹吧
    第二个例子 worker.on 的回调方法不就是在 master 执行的吗,但是楼主的注释说是在子进程执行的?
    Windelight
        4
    Windelight  
       Aug 10, 2019 via Android
    我跟佛说...........
    佛说好的...........
    我跟佛说...........
    佛说不行,只能..
    我又跟佛说........
    佛说不行...........
    ............................
    ............................
    佛响应时间过长
    jecshcier
        5
    jecshcier  
       Aug 10, 2019 via iPhone
    众所周知,cluster 是多进程。。而不是多线程
    lxrmido
        6
    lxrmido  
       Aug 11, 2019
    众所周知,线程跟进程是差异很大的两个概念……

    最近被 worker 折磨得快要佛了的在此佛一下……
    jybox
        7
    jybox  
       Aug 11, 2019
    nodejs.org/api/worker_threads.html

    多线程现在也有了,不过不明白楼主想说什么。
    Trim21
        8
    Trim21  
       Aug 11, 2019 via Android
    链接 404 了
    zbinlin
        9
    zbinlin  
       Aug 11, 2019
    * nodejs 是多线程的,只是 js 是单线程的,而且现在也支持 js 多线程了
    * 论命名的重要性
    * 还是看英文的官方文档吧
    Death
        10
    Death  
       Aug 11, 2019 via Android   ❤️ 1
    为什么感觉 lz 的这一段话有种机翻的感觉……
    ziiber
        11
    ziiber  
       Aug 11, 2019
    为什么我进这个帖子背景色是黑色的???
    POPOEVER
        12
    POPOEVER  
       Aug 11, 2019
    确实震惊了,404
    Hardo
        13
    Hardo  
       Aug 11, 2019 via Android
    为啥我看不懂楼主在说啥
    phoenixlzx
        14
    phoenixlzx  
       Aug 11, 2019 via iPhone
    我怎么记得 cluster 这模块好多年前就有了?
    dartabe
        15
    dartabe  
       Aug 11, 2019
    求科普下 为什么查阅资料 linux 下线程进程是一个东西???
    autogen
        16
    autogen  
       Aug 11, 2019
    多进程要什么支持,直接多启动几十个就好了
    autogen
        17
    autogen  
       Aug 11, 2019
    多进程要什么支持,直接多启动几十个就好了
    nginx、lvs 用轮询就好了
    gramyang
        18
    gramyang  
       Aug 12, 2019 via Android
    @Windelight 佛说:三天之内撒了你(心肺停止)
    你 fatal 了。。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3088 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 155ms · UTC 12:43 · PVG 20:43 · LAX 05:43 · JFK 08:43
    ♥ Do have faith in what you're doing.