[求解] 什么样的情况下才会从 django 到 Node? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hyhnm
V2EX    问与答

[求解] 什么样的情况下才会从 django 到 Node?

  •  
  •   hyhnm 2018-05-06 00:57:13 +08:00 2869 次点击
    这是一个创建于 2804 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 初创
    • 没有上线
    • 没有使用 Nosql

    项目目前用的是 django,估计 69%,前两天说要转到 node (不是重写一遍);

    在这个之前按照需求做了一个 简单的 Node 的 Api (并没有使用);

    leader 说因为效能所以要使用 Node (“说”是读写量大,django 不能胜任);特定群体的项目 -> w;

    然后又“说”因为效能问题不使用 Docker ;

    这是什么操作?不是很理解....

    使用 django 会面临性能问题? 周一给答复(表示一头雾水)

    求 V 友建议哪些可以迁移到 Node ? Django 优化的文章可以推荐推荐。给跪了...

    13 条回复    2018-05-06 12:56:29 +08:00
    e9e499d78f
        1
    e9e499d78f  
       2018-05-06 01:03:51 +08:00
    听 leader 的,让 leader 来写
    hyhnm
        2
    hyhnm  
    OP
       2018-05-06 01:32:57 +08:00 via iPhone
    @e9e499d78f 好主意
    kidlj
        3
    kidlj  
       2018-05-06 02:09:08 +08:00 via iPhone
    这么说吧,因为 node 是天然异步的原因,如果不是计算密集型而是 io 密集型的场景,node 用几十兆内存,10%的 CPU 就能跑满 mysql 30%-40%的 io。即使将来有更高的并发,node 这块也不会成为瓶颈,而是慢在数据库那里,这个时候着重优化 io 就好了。而且 node 的 web 框架 Express 非常简单易用,两天就能把所有 API 过一遍了,剩下就是往上堆业务逻辑的中间件(顺序调用)。用 node 开发 web 真的性能又好出活又快。
    kidlj
        4
    kidlj  
       2018-05-06 02:12:38 +08:00 via iPhone
    Node 版本选高一点的版本,使用 async/await,用同步的方式写异步逻辑,简直不要太爽。
    ericls
        5
    ericls  
       2018-05-06 05:36:26 +08:00 via iPhone
    一般这种问题是 应该是你们的盈利模式的问题
    orangeade
        6
    orangeade  
       2018-05-06 06:57:54 +08:00 via Android
    @kidlj Python 早就有 async/await 了
    orangeade
        7
    orangeade  
       2018-05-06 07:11:10 +08:00 via Android
    Python 上 asyncio + uvloop + type hint,
    就已经相当于 ndejs + typescript 了,
    而且开发体验非常好,还用啥 node js。

    django 优化的文章可以看 Instagram 公司的技术博客,它们月活都是数亿了,不还在用 django
    kiwi95
        8
    kiwi95  
       2018-05-06 09:21:38 +08:00 via iPhone
    个人体验,python 性能确实差。如果你们没有性能优化经验的人,对外服务用 python 还是多考虑比较好。读写和网络量大的话 node 确实更合适,但如果你们业务逻辑很复杂的话,node 代码隐藏的坑又会比较多。

    至于有什么公司用 python 达到了什么性能,那和你一般公司没有什么关系
    KgM4gLtF0shViDH3
        9
    KgM4gLtF0shViDH3  
       2018-05-06 09:32:06 +08:00 via iPhone
    遇到性能问题是好事,就怕根本遇不到
    hyhnm
        10
    hyhnm  
    OP
       2018-05-06 11:17:48 +08:00
    @bestkayle 是的,有这种情况非常乐意的
    @kiwi95 谢谢,目前 IO 都是嘴上说,我估计是碰不到的
    @orangeade 多谢老铁
    @ericls 老哥经验啊,公司目前给我有种不好的预感。
    @kidlj 用写过一点点 API,连续请求 10 次就挂了,之前是按照[这个博客]( https://blog.csdn.net/kkdestiny/article/details/51434806)写的,老哥这方面的资料和 express demo 吗
    msg7086
        11
    msg7086  
       2018-05-06 12:03:24 +08:00
    初创公司,大家会啥用啥,上线跑起来完成 POC 以后,流量上来了,达不到要求了,再逐步重写热点。

    大多数的项目在达到流量瓶颈之前就已经关门歇业了,根本轮不到讨论 Python 和 Node 之间性能差距的机会。
    puritania
        12
    puritania  
       2018-05-06 12:35:54 +08:00 via iPhone
    跟他说不如直接用 go
    nyfair
        13
    nyfair  
       2018-05-06 12:56:29 +08:00 via iPhone
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     931 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 21:07 PVG 05:07 LAX 13:07 JFK 16:07
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86