下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

什么是Node.js?Node.js的应用场景有哪些?

作者:课课家教育     来源: http://www.kokojia.com点击数:845发布时间: 2016-08-17 08:30:36

标签: Node.jsjavascriptMySQL

Web开发

  Node.js是一个基于Chrome javaScript运行时建立的平台,用于方便地搭建响应速度快、易于扩展的网络应用。Node.js使用事件驱动,非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的实时应用。

  Node是一个Javascript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引擎执行Javascript的速度非常快,性能非常好。Node对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更快。

javascript 1.Express+EJS+Mongoose/MySQL——应用于Web开发

  express是一个轻量的、灵活的Nodejs Web应用框架,它可以快速地搭建网站。Express框架建立在Nodejs内置的Http模块上,并对Http模块再包装,从而实现Web请求处理的功能。

  ejs是一个嵌入的javascript模板引擎,通过编译生成HTML的代码。

  mongoose是Mongo DB的对象模型工具,通过Mongoose框架,可以进行访问Mongo DB的操作。

  MySQL是连接MySQL数据库的通信API,可以进行访问MySQL的操作。

  通常用Nodejs做Web开发,需要3个框架配合使用,就像Java中的SSH。

  2.Hexo——应用于Web博客

  Hexo是一个简单的、轻量的、基于Node的一个静态博客框架,可以应用在web博客中。通过Hexo,只需要几条命令就可以快速创建一个web博客。

  发布时,Hexo可以部署在我们的Node服务器上,也可以部署github上。如果是个人用户,部署在github上的好处也很多,不仅可以省去服务器的成本,还可以减少各种系统运维的麻烦,比如系统管理、备份、网络等方面。所以,基于github的个人站点正开始流行起来。

  3.Cheerio/Request——应用于Web爬虫

  cheerio是一个为服务器特别定制的、快速、灵活、封装jQuery核心功能工具包。Cheerio包括了jQuery核心的子集,从jQuery库中去除了所有DOM不一致性和浏览器不兼容的部分,揭示了它真正优雅的API。Cheerio工作在一个非常简单、一致的DOM模型之上,解析、操作、渲染都变得难以置信的高效。基础的端到端的基准测试显示Cheerio大约比JSDOM快八倍(即8x)。Cheerio封装了@FB55兼容的html parser,几乎能够解析任何的HTML和XML document。

  4.Restify——应用于REST开发

  如果是应用于REST开发场景中的,那么Restify是一个不错的选择。restify是一个基于Nodejs的REST应用框架,支持服务器端和客户端。restify与express相比更专注于REST服务,删除了express中的template、render等功能,同时强化了REST协议使用,版本化支持,HTTP的异常处理。

  5.Express+Socket.io——应用于Web聊天室(IM)

  使用Express+Socket.io方式适用于制作Web聊天室。Socket.IO是一个Web Socket库,包括了客户端的js和服务器端的nodejs,它的目标是构建可以在不同浏览器和移动设备上使用的实时应用。socket.io给跨浏览器构建实时应用提供了完整的封装,它完全由Javascript实现。express是一个小巧的Node.js的Web应用框架,在构建HTTP服务器时经常会使用到。

  Socket.IO结合express来构建服务器,代码如下:

Socket.IO结合express构建服务器

  6.node club——应用于Web论坛

  Node Club是用Node.js和Mongo DB开发的新型社区软件。它不仅界面美观,而且功能丰富、小巧迅速,已在Node.js中文技术社区CNode得到应用,但你完全可以用它搭建自己的社区。

  7.bower.js——应用于前端包管理平台

  Bower是twitter推出的、基于nodejs的模块化思想的一款包管理工具,把功能分散到各个模块中,让模块和模块之间存在联系,通过Bower来管理模块间的这种联系。

  8.Passport——应用于OAuth认证

  Passport项目是一个基于Nodejs的认证中间件。Passport只是为了“登陆认证”,因此代码干净、易维护,可以方便地集成到其他的应用中。Web应用一般有2种登陆认证的形式:用户名和密码认证登陆,OAuth认证登陆。Passport可以根据应用程序的特点,配置不同的认证机制。本文介绍的是用户名和密码的认证登陆。

  9.Cleaver——应用于Web幻灯片

  Cleaver可以生成基于Mark down的演示文稿。如果你已经有了一个Mark down的文档,30秒就可以制作成幻灯片。Cleaver是为Hacker准备的工具。

  10.browserify——一个浏览器环境工具

  Browserify的出现,使Nodejs模块跑在浏览器中,用require()的语法格式来组织前端的代码,加载npm的模块。通过预编译让前端 Javascript 可以直接使用Node NPM安装的一些库。

  11.Later——一个定时任务工具

  Later是一个基于Nodejs的工具库,用最简单的方式执行定时任务。Later可以运行在Node和浏览器中。

  虽然Node项目还不够成熟,但很少看到对一个项目如此狂热的node社区。不管是新手,还是专家,大家都围绕着项目,使用并贡献自己的能力,致力于打造一个探索、支持、分享、听取建议的社区。

赞(0)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程