nodejs安装的简单的使用例子

什么是nodejs

最近想开始学习nodejs,首先了解一下什么是nodejs。
Node.js 不是一种独立的语言,Node.js 也不是一个 JavaScript 框架,。Node.js 是一个让 JavaScript 运行在服务
端的开发平台。大家知道之前的JavaScript只运行在前端,必须要游览器支持,现在也可以做后端语言使用。这尼玛的太神奇了,想我们开发php的是不是没有饭吃了,带着这个疑问继续往下看

Node.js优点

它是一个Javascript运行环境,上面介绍过了
依赖于Chrome V8引擎进行代码解释,V8 号称是目前世界上最快
的 JavaScript 引擎
最大的优点是异步式 I/O 与事件驱动,这里解释一下,比如php在执行mysql的时候,线程会阻塞,等待数据库返回查询结果继续执行高并发的时候,一方面要处理阻塞的线程,一方面要接受新的线程,因此
会浪费大量系统资源。nodejs是怎么做的?遇到数据库查询,不会等待数据库返回查询结果,直接执行下面的代码直到进入事件循环。当数据库查询结果返回时,会将事件发送到事件队列,等到线程进入事件循环以后,才会调
用之前的回调函数继续执行后面的逻辑。这个貌似有点类似js的异步加载。
注意javascript 因为执行在node.js平台里没有浏览器兼容性问题

为什么要使用node.js

Node.js 与 PHP+Nginx对比
细对比了 Node.js 与 PHP+Nginx 组合,结果显示在3000并发连接、30秒的
测试下,输出“hello world”请求:
 PHP 每秒响应请求数为3624,平均每个请求响应时间为0.39秒;
 Node.js 每秒响应请求数为7677,平均每个请求响应时间为0.13秒。
而同样的测试,对MySQL查询操作:
 PHP 每秒响应请求数为1293,平均每个请求响应时间为0.82秒;
 Node.js 每秒响应请求数为2999,平均每个请求响应时间为0.33秒。
上面是别人的测试结果,足以说明为什么要使用node.js了,高并发的平台里绝对是神器

node.js适合开发什么

Node.js 是一个为实时Web(Real-time Web)应用开发而诞生的平台,nodejs的适合如聊天等开发,像博客之类的还是使用php开发来的稳定

nodejs安装

windows下一直下面一步,linux下面也是一般的安装软件的方法,但是安装好之后要检查一下是否安装成功
看截图

上面看到我检查了npm,那什么是npm?
npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准。有了npm,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。
安装的貌似都是通过npm安装的,安装通过下面的命令进行

npm install -g <name>

上面的-g是安装到全局里

先来写一个hello word程序提示一下成功感

var http = require('http');
http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/html'});
    response.write('<h1>Node.js</h1>');
    response.end('Hello World');
}).listen(8080);
console.log('Server running at http://127.0.0.1:8080/');

上面的代码解释一下
第一句require 想到与php中require引入文件,这里是引入http模块,http模块是nodejs自己带的
第二句创建一个服务

listen 是侦听的端口,可以随便换但是要没有使用的端口
上面的代码我保存成test.js,然后在cmd中输入

node test.js

显示的内容是console.log输出的,这本来就是js输出命令,我一般用来调试
然后在游览器中访问127.0.0.1:8080

程序到此结束了,但是有个问题,修改一下js,就必须在命令窗口node一下,不然修改了文件游览器里显示不出来,这里
,还是安装一个东西,去掉这个重复操作

安装supervisor

用npm安装supervisor

npm install -g supervisor

然后用下面的命令运行

supervisor test.js

现在文件修改了,游览器里马上就成看到修改了

时间: 2024-12-02 09:21:47

nodejs安装的简单的使用例子的相关文章

windows系统下简单nodejs安装及环境配置_javascript技巧

相信对于很多关注javascript发展的同学来说,nodejs已经不是一个陌生的词眼.有关nodejs的相关资料网上已经铺天盖地.由于它的高并发特性,造就了其特殊的应用地位. 国内目前关注最高,维护最好的一个关于nodejs的网站应该是http://www.cnodejs.org/  这里不想谈太多的nodejs的相关信息.只说一下,windows系统下简单nodejs环境配置. 第一步:下载安装文件 下载地址:官网http://www.nodejs.org/download/    这里用的

memcache的windows下的安装和简单使用

原文:memcache的windows下的安装和简单使用 memcache是为了解决网站访问量大,数据库压力倍增的解决方案之一,由于其简单实用,很多站点现在都在使用memcache,但是memcache缺点之一却是缺少安全性验证,所以一般而言我们都会把一些访问量大,但是不需要验证的数据放在这里,需要用的时候来这里取,就给数据库减少了很多的负担.一般而言设定个更新时间就好了,1个小时左右更新一次. windows下安装和测试memcache最为方便,Linux只是需要相应的编译包就行了,需要包括m

PostgreSQL 安装和简单使用第1/2页_PostgreSQL

据我了解国内四大国产数据库,其中三个都是基于PostgreSQL开发的.并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用.本文只是简单介绍一下postgresql的安装和简单的使用,语法方面涉及的比较少,以方便新手上路为目的. 1.系统环境和安装方法 : PostgreSQL的安装方法比较灵活,可以用源码包安装,也可以用您使用的发行版所带的软件包来安装,还可以采用在线安装-- 1.1 系统环境:Ubuntu Linux

centos6下vpsmate、nodejs安装及配置npm步骤

1.安装vpsmate 依次执行以下代码: cd /usr/src/ wget http://www.vpsmate.org/tools/install.py python install.py 需要您需要用户名和密码,用来登录vpsmate的管理员后台. 这里选择vpsmate的原因是,它不会自动安装PHP.apache.mysql这些东西,虽然是一键支持安装这些服务器程序.现在使用vpsmate的主要原因是用来编辑文件.修改文件的权限等等,这些都是可视化操作,非常的顺手. 安装结束可以使用

python requests的安装与简单运用

requests是Python的一个HTTP客户端库,跟urllib,urllib2类似,那为什么要用requests而不用urllib2呢?官方文档中是这样说明的: python的标准库urllib2提供了大部分需要的HTTP功能,但是API太逆天了,一个简单的功能就需要一大堆代码. 我也看了下requests的文档,确实很简单,适合我这种懒人.下面就是一些简单指南. 插播个好消息!刚看到requests有了中文翻译版,建议英文不好的看看,内容也比我的博客好多了,具体链接是:http://cn

VMware下Linux的安装及简单设置

当你听别人说起Linux.FreeBSD甚至OS2等等新奇的操作系统时,是不是也想尝试看看?但是当听到需要重新切割硬盘,原有数据还有可能丢失时,是否又有些犹豫?当初我也是在Linux的门外彷徨很久,直到我找到了VMware.因为它既保证了Linux能正确安装且正常运行,又不破坏原来的操作系统,为我们除去了费心研究如何把硬盘分区分得合理和高效的苦恼.下面,我给大家介绍一下怎样用这款软件来安装Linux. 一.VMware的安装及配置 简单地说,VMware就是一款虚拟机软件,它可以在你现有的操作系

jquery插件-jquery.bootgrid插件如何实现数据的分页显示,求一个简单地小例子~~

问题描述 jquery.bootgrid插件如何实现数据的分页显示,求一个简单地小例子~~ 感觉它是一个非常不错的数据分页显示框架,希望能够学会,可是在网上没有查到类似的资料,大家有用过的吗? 解决方案 http://www.jquery-bootgrid.com/Examples 解决方案二: 这个我看过了,但是代码不全,有部分不知道怎么写

入侵检测-关于一个简单的堆栈例子

问题描述 关于一个简单的堆栈例子 我在读一本入侵检测技术的书,看到一个简单的堆栈溢出示例,看不懂,请各位大神解释一下是什么意思 解决方案 简单说就是通过程序编写的不严格,使局部变量溢出从而覆盖掉堆栈上的返回值.调用一个函数时,以__stdcall为例,先把参数入栈,然后时返回地址入栈, CPU执行现场跳转到函数中 ,然后是ebp寄存器入栈,随后局部变量和寄存器入栈,不同的编译器可能会有所差别,比如微软CL编译器在处理Debug和Release时是有一些区别的,但大致是相同的,溢出攻击,简单说就是

ajax-jQ插件:pjax的使用方法能帮忙写个简单的小例子吗?C币全都给你啦!谢谢

问题描述 jQ插件:pjax的使用方法能帮忙写个简单的小例子吗?C币全都给你啦!谢谢 将jquery.pjax.js部署到你的页面中,将需要使用pjax的a链接进行绑定(不能绑定外域的url),如: $.pjax({ selector: 'a', container: '#container', //内容替换的容器 show: 'fade', //展现的动画,支持默认和fade, 可以自定义动画方式,这里为自定义的function即可. cache: true, //是否使用缓存 storage