好程序员web前端学习路线nodeJs学习过程之认识nodejs
admin
2023-02-14 00:00:05
0

  好程序员web前端学习路线nodeJs学习过程之认识nodejs,nodeJs只是听说过,没见过,没玩过。从新手开始,我想慢慢掌握它。

  首先,我想知道nodeJs是什么?干什么用的。
  来源于node官网与网络:

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 
Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始。比较独特的是,Node.js会假设在POSIX环境下运行Linux 或 Mac OS X。
如果是在Windows下,那就需要安装MinGW以获得一个仿POSIX的环境。在Node中,Http是首要的。Node为创建http服务器作了优化,所以在网上看到的大部分示例和库都是集中在web上(http框架、模板库等)。

  做些什么呢

  1. 用于web服务器端;

  2. javascript工具包;

  3. 和http有着密切的关系。
  4. 快速构建网络服务及应用;

  5. 封装谷歌v8引擎。

nodeJs到底是什么呢,它是服务器端js运行平台,是一个javascript的运行环境和库。可以编写后台系统或者服务器端的Javascript代码,交给 Node.js来解释执行。就像html遇到php会由php来解释,jsp由jvm解释执行一样。

  他还有很多的特性就不一一举例了。Nodejs作为后起之秀的后台,也有很多吸引人的地方:单线程、V8虚拟机、事件驱动、非阻塞IO;nodejs可以不新增额外线程的情况下,依然可以对任务进行并处理 --node是单线程的。它是通过事件轮询来实行操作的,对此我们可以充分的利用这一点,尽可能的避免阻塞,取而代之。

  那nodejs是做什么的?服务端类似于Java,web应用等;

  举个例子:

var http = require('http');

server = http.createServer(function (req, res) {

   res.writeHeader(200, {"Content-Type": "text/plain"});

   res.end("Hello");

})

server.listen(8000);

console.log("httpd start @8000");

  确保nodejs环境安装成功,对此编译执行通过,在浏览器地址栏输入localhost:8000,可以看到输出。

nodeJS的优缺点

  优点:1. 高并发

  1. 适合I/O密集型应用

  缺点:1. 不适合CPU密集型应用;由于JavaScript单线程的原因,如果有长时间运行的计算(比如大循环),将会导致CPU时间片不能释放,使得后续I/O无法发起;

  解决方案:分解大型运算任务为多个小任务,使得运算能够适时释放,不阻塞I/O调用的发起;

  1. 只支持单核CPU,不能充分利用CPU

  2. 可靠性低,一旦代码某个环节崩溃,整个系统都崩溃

  原因:单进程,单线程

  解决方案:(1)Nnigx反向代理,负载均衡,开多个进程,绑定多个端口;

  (2)开多个进程监听同一个端口,使用cluster模块;

  1. 开源组件库质量参差不齐,更新快,向下不兼容

  2. Debug不方便,错误没有stack trace

相关内容

热门资讯

人民锐评:中国籍数学家首获全球... 历史性的突破!日前,第二十一届菲尔兹奖得主名单揭晓,北大2007级本科校友王虹、邓煜双双获奖,无数网...
深度专访|网易智企段毓铮:不敢... 企业AI的商业化,难点在于让客户敢用、会用、用得有效果。在WAIC现场,搜狐AI邀请到网易智企副总经...
来论|从“菲尔兹奖”,看见科技... 王虹、邓煜分别凭借在调和分析与几何测度论、偏微分方程与数学物理领域的突破性工作,共同荣获2026年菲...
当清洁机器人爬上窗户,能否开启... 过去十年,清洁机器人的故事,几乎都发生在地面上。 扫地、拖地、洗地,从随机碰撞到激光导航,从人工洗抹...
冰箱通电发烫压缩不启动不制冷什... 1、很有可能是因为冰箱的压缩机内高压输出缓冲管出现了断裂,造成高压管不排气,低压管不吸气的这种状况,...
冰箱能通电但是不制冷什么问题 1、电源问题先检查冰箱的电源,看电源的连接是否正常,插头是否通电,插稳。插好插头之后,可以看一下冰箱...
洗衣机通电为什么不转动 导致这类问题一般有这几种情况:可能是进水电磁阀故障导致,若电磁阀已得电还不进水,就是电磁阀的阀芯被卡...
海尔洗衣机不转动了但是会流水 洗衣机可以进水说明电磁阀工作正常;能排水,说明排水泵是正常。洗衣机电源是没有问题的,但是不转动说明洗...
全球首个5G鲁班工坊莫斯科结硕... 【原标题】全球首个5G鲁班工坊莫斯科结硕果 文/本报记者 黄河 刘恺 李鲲 宋瑞 从渤海之滨到莫斯科...
西门子滚筒洗衣机不启动嗒嗒响 1、可能是因为启动电容器的问题导致的不启动;2、可能是因为皮带松弛和打滑的原因;3、可能是因为棘爪和...