nodejs 学习之路....1
Node.js 是一个让 JavaScript 运行在服务
端的开发平台,它让 JavaScript 成为脚本语言世界的一等公民,在服务端堪与 PHP、Python、
Perl、Ruby 平起平坐。
Node.js 是一个划时代的技术,它在原有的 Web 前端和后端技术的基础上总结并提炼出
了许多新的概念和方法。
nodejs 是单线程异步式的,优点和缺点显而易见,优点是 不会有线程阻塞,降低资源开销,当然缺点是,不好调试,把完整的逻辑拆分,当然这个问题有个第三方模块解决。。。(后面继续)
例1:
res =db.query("select * from user");
res.output();
以上代码 执行到第一行时候,线程会阻塞,等待从数据库返回数据。
例2:使用nodejs
res=db.query("select * from user",function(res){
res.output();
})
大家看到这里,相信就明白了吧。 nodejs 使用了 一个毁掉函数,在执行到 第一行时候 不会等待结果返回,而是直接执行后面语句。直到进入事件循环,当数据库查询结果返回时,会把事件发送到事件队列,等待线程进入事件循环以后,才会调用之前的回调函数继续执行。
网络通信 ------>事件循环<---------客户端请求 等等..
注: nodejs 使用 google 的 Javascript V8 引擎。。。完整 Javascript V8 资料请百度。。
nodejs 是单线程异步式的,优点和缺点显而易见,优点是 不会有线程阻塞,降低资源开销,当然缺点是,不好调试,把完整的逻辑拆分,当然这个问题有个第三方模块解决。。。(后面继续)
例1:
res =db.query("select * from user");
res.output();
以上代码 执行到第一行时候,线程会阻塞,等待从数据库返回数据。
例2:使用nodejs
res=db.query("select * from user",function(res){
res.output();
})
大家看到这里,相信就明白了吧。 nodejs 使用了 一个毁掉函数,在执行到 第一行时候 不会等待结果返回,而是直接执行后面语句。直到进入事件循环,当数据库查询结果返回时,会把事件发送到事件队列,等待线程进入事件循环以后,才会调用之前的回调函数继续执行。
网络通信 ------>事件循环<---------客户端请求 等等..
注: nodejs 使用 google 的 Javascript V8 引擎。。。完整 Javascript V8 资料请百度。。

浙公网安备 33010602011771号