gpt4 book ai didi

python - Node.js 与 Python

转载 作者:IT老高 更新时间:2023-10-28 23:15:18 24 4
gpt4 key购买 nike

我正在重写我的服务器并决定使用 Node.js 和 Python。

我更喜欢 Javascript(因为我非常精通它)但是 this article让我停下来。我很好奇是否有人有任何问题,但我也很好奇是否有任何与平台相关的优点。

具体来说,不支持/限制/excel-at中的任何一个

  • mySQL 调用
  • imageMajik 交互
  • 调用系统进行文件系统操作
  • 通过 WGET/Curl 其他方式调用网络
  • 您可以认为正常的 CGI 进程必须处理。

我不想就 PHP 或 .Net 的优点争论不休,我已经做出了决定转向 Python 或 Node.js 的决定,并且完全选择了 Node.js,直到我阅读了上述内容文章,所以,真的,我只是在寻找人们在使用这两个工具时遇到的具体问题/优点。

提前致谢。

最佳答案

这里有两个问题:

  1. 语言的选择。你需要自己决定你更喜欢 python 还是 javascript,以及哪一个提供你想要的库。我无法帮助您做出这部分决定。
  2. IO 模型的选择。

与文章所暗示的不同,单线程非阻塞 IO 模型原则上还不错。我个人非常喜欢这个模型,因为它消除了多线程的复杂性,同时仍然使用共享内存模型。

此模型的另一个优点是,因为您不需要每个请求一个线程,所以您可以有许多并发的打开请求。

一个缺点是,如果没有语言支持,您需要显式地对延续进行排队,而不是以简单的命令式方式编写代码。 C#5 用它的 async-await 特性解决了这个问题,如果 node.js 将来提供类似的东西,我不会感到惊讶。

文章主要讲第二个缺点:如果阻塞了主线程,就阻塞了整个服务器。

他的一个例子简直就是滥用:他实现了一个忙碌的等待,而不是订阅一个事件。通过正确的编程,这根本不应该发生。

另一个例子有更多的意义:如果你有 CPU 密集型计算,你最好不要在主线程上进行。对此的简单解决方案是旋转工作线程,它在不触及主线程使用的内存的情况下进行计算。一旦完成,它就会在主线程上调用回调。不确定 node.js 是否提供此功能。但由于许多服务器应用程序不受 CPU 限制,因此这通常根本不是问题。

总的来说,这篇文章的质量很低,而且更多地是关于作者的,而不是关于 node.js 的。你不应该让它影响你的决定。

关于python - Node.js 与 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8582127/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com