近期紧锣密鼓的学习了下nodejs(之前在学php。算入门了吧,可是时间关系,还没写文章,兴许要搞安卓和大数据,总之比較忙哈,计划上php要排到后面了,还请广大小伙伴不要着急)

先抄一句:Node.js 是server端的 JavaScript 执行环境。它具有无堵塞(non-blocking)事件驱动(event-driven)等的特色,Node.js
採用
V8 引擎,相同,Node.js 实现了类似
Apache
nginx 的web服务,让你能够通过它来搭建基于 JavaScript 的 Web App。



听起来是多么的高大上啊,那么得给点样例才干让观众养养眼。

先列一个php样例

$result = mysql_query('select * from testTable");

print_r($result);

看来上面的代码之后。我们不免有疑问,I/o操作而且在数据回来之前,这个进程一直是被阻塞状态,也许大家觉得这没什么。可是否想过

假设延迟10ms到几分钟的情况。将会发生:

1、硬盘正在运行维护操作。读/写都暂停了

2、负载添加。数据库查询变慢

这个时候大家是否想到异步程序呢

最简单的就是jquery中的ajax啦

$.post('/test.json',function(data){

console.log(data);

}}

而node和这个几乎相同

var fs = require('fs');

fs.readFile('./resource.json',function(err,data){

console.log(data);

})

至于怎么安装node之类的就不多说了

node能做的事太多了,大家比較关心的可能是web开发,也是眼下比較火的。

先上点干货,创建一个文件app.js 。内容例如以下,然后安装依赖----npm install http;

var http=require('http');

http.createServer(function(req,res){

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

res.end('Hello World\n');

}).listen(3000);

console.log('Server runing at http://localhost:3000/');

浏览器输入http://localhost:3000

就能够看到helloworld了

于是乎就入门了。。

(兴许会继续公布系列文章,因为时间关系先写到这了)。



nodejs初学-----helloworld的更多相关文章

  1. nodejs初学————安装篇(iis8.5+windows8.1)

    nodejs很久前就想玩玩,不过一直没时间,昨晚花了4个小时来捣鼓到iis上架设成功了,废话不说了. PS:我的系统是windows8.1 x64,所以自带iis8.5的,下载的文件也是x64的. N ...

  2. nodejs 初学笔记

    首先到nodejs的官网安装nodejs,地址nodejs.org,网站第一页会根据你的电脑系统推荐你适合的版本,下载,不断next,在cmd中输入 node -v 可以看到版本的话,即安装成功. 说 ...

  3. nodejs 从helloworld到高质量的后台服务server的一点思考

    ---恢复内容开始--- 新公司用的nodejs作为app和网站的后台服务server,所以最近对nodejs一直在学习,加上之前简单的学习了一点,看了两天后台接口源码,所以就直接上手干活了,下面是我 ...

  4. nodeJs 初学案例摘要

    在学习nodeJs的时候,照着文档做的,但是到最后的上传文件显示图片总是报错, 所用的fs.renameSync出错:Error: EXDEV, cross-device link not permi ...

  5. NodeJS 初学之安装配置环境

    [TOC] 1.环境安装 操作系统: Ubuntu 16.04.2 LTS 1.1安装nvm ryan@ryan-900X5L:~/temp$ curl https://raw.githubuserc ...

  6. 第一个Nodejs程序

    我的第一个Nodejs程序:Hello World var http = require("http"); http.createServer(function(request, ...

  7. 【技术文章】《快速上手nodejs》

    本文地址:http://www.cnblogs.com/aiweixiao/p/8294814.html 原文地址: 扫码关注微信公众号 1.写在前面   nodejs快速上手   nodejs使ja ...

  8. NodeJs在windows上安装配置测试

    Node.js简介简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个 ...

  9. 几种Java NIO框架的比较(zz)

    问题:生活中工作中,会有人问我javaNIO框架里面 Netty Mina  xSocket Grizzly 等等哪个比较好? 在这里写一下自己的感受,也算是总结一下吧 在我的印象中.不管是什么NIO ...

随机推荐

  1. 开启dns服务时,/etc/init.d/named start 卡住了的解决办法。

    在命令行输入 rndc-confgen -r /dev/urandom -a  再次开启服务 /etc/init.d/named  start ok

  2. POJ1595 Prime Cuts

    Prime Cuts Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 11961   Accepted: 4553 Descr ...

  3. LOJ#2307. 「NOI2017」分身术

    $n \leq 100000$个点,$m \leq 100000$次询问,每次问删掉一些点后的凸包面积. 不会啦写个20暴力,其实是可以写到50的.当个计算几何板子练习. //#include< ...

  4. ckeditor与ckfinder的使用方法 .NET (转载)

    原文发布时间为:2009-11-25 -- 来源于本人的百度文章 [由搬家工具导入] ckeditor与ckfinder的使用方法 .NET (转载) ckeditor 3.0.1学习笔记  一.ck ...

  5. a kind of async programming in c#, need to reference definition

    void Main() { Run d=new Run(RunHandler); IAsyncResult result= d.BeginInvoke(new AsyncCallback(CallBa ...

  6. 全面解析Vue.nextTick实现原理

    vue中有一个较为特殊的API,nextTick.根据官方文档的解释,它可以在DOM更新完毕之后执行一个回调,用法如下: // 修改数据 vm.msg = 'Hello' // DOM 还没有更新 V ...

  7. Codeforces Round #449 Div. 2 A B C (暂时)

    A. Scarborough Fair 题意 对给定的长度为\(n\)的字符串进行\(m\)次操作,每次将一段区间内的某一个字符替换成另一个字符. 思路 直接模拟 Code #include < ...

  8. check source code after macro expand

    Some time I'd like check source code after macro expand. We can use -E option to stop after the prep ...

  9. LeetCode OJ-- Reorder List **

    https://oj.leetcode.com/problems/reorder-list/ 将一个链表重新排序,比如 1 2 3 4 5,变成 1 5 2 4 3 1.找到中间节点 mid 2.将链 ...

  10. (转)Kettle命令行

    kettle使用命令行来运行ktr和kjb 1:cmd方式运行 1.ktr的运行:运行transformation文件是通过Pan.bat来运行的. 打开cmd命令行窗口,转到Pan.bat所在的目录 ...