Nodejs是JavaScript的运行环境,它让 Java Script 可以开发后端程序,实现几乎其他后端

  • Node.js 是一个 Javascript 运行环境(runtime)
  • 可以与 PHP、JSP、Python、Ruby 等后端语言平起平坐。
  • Nodejs 是基于 V8 引擎,V8 是 Google 发布的开源 JavaScript 引擎,本身就是用于 Chrome 浏览器 的 JS 解释部分,但是 Ryan Dahl 把这个 V8 搬到了服务器上,用于做服务器的软件。

优势:

1.NodeJs 语法完全是 js 语法

  懂 JS 基础就可以学会 Nodejs 后端开发。成本。Node 打破了过去 JavaScript 只能在浏览器中运行的局面。前后端编程环境统一,可以大大降低开发

2.NodeJs 超强的高并发能力。

  Node.js 的首要目标是提供一种简单的、用于创建高性能服务器及可在该服务器中运行的各种应用程 序的开发工具。首先让我们来看一下现在的服务器端语言中存在着什么问题。在 Java、PHP 或者.net等服务器端语言中,会为每一个客户端连接创建一个新的线程。而每个线程需要耗费大约 2MB 内存理论上,一个 8GB 内存的服务器可以同时连接的最大用户数为4000个左右。要让 Web 应用程序支持更多的用户,就 需要增加服务器的数量,而 Web 应用程序的硬件成本当然就上升了。也就是说,Node.js 不为每个客户连接创建一个新的线程,I/O、事件驱动机制,让 Node.js 程序宏观上也是并行的。

3.实现高性能服务器

  严格地说,Node.js 是一个用于开发各种 Web 服务器的开发工具。在 Node.js 服务器中,运行的是高性能 V8 JavaScript 脚本语言,该语言是一种可以运行在服务器端的 JavaScript 脚本语言。那么,什么是 V8 JavaScript 脚本语言呢?该语言是一种被 V8 JavaScript 引擎所解析并执行的脚本语言。V8 JavaScript 引擎是由 Google 公司使用 C++语言开发的一种高性能 JavaScript 引擎,该引擎并不局限于在浏览 器中运行。Node.js 将其转用在了服务器中,并且为其提供了许多附加的具有各种不同用途的 API。例如, 在一个服务器中,经常需要处理各种二进制数据。在 JavaScript脚本语言中,只具有非常有限的对二进制数 据的处理能力,而 Node.js 所提供的 Buffer 类则提供了丰富的对二进制数据的处理能力。另外,在 V8 JavaScript 引擎内部使用一种全新的编译技术。

4.开发周期短、开发成本 低、学习成本低。

NodeJs 适合做什么?

  在短短几年多的时间里,Node 变得非常热门,使用者也非常多。这些使用者对于 Node 的各自倚重点也各部相同,经过整理,主要有下几类

• 前后端编程语言环境统一。这类倚重点的代表是雅虎。雅虎开放了 Cocktai 框架,利用
自己深厚的前端沉淀,将 YUI3 这个前端框架的能力借助 Node 延伸到服务器端,

• Node 带来的高性能 I/O用于实时应用。Voxer 将 Node 应用在实时语音上。国内腾讯的
朋友网将 Node 应用在长连接中,以提供实时功能,花瓣网、蘑菇街等公司通过 socket.io 实
现实时通知的功能。

• 并行 I/O使得使用者可以更高效地利用分布式环境。阿里巴巴 eBay 是这方面的典型。
阿里巴巴的 NodeFox 和 eBay 的 ql.io 都是借用 Node 并行 I/O 的能力,更高效地使用已有的
数据。

• 并行 I/O 有效利用稳定接口提升 Web 渲染能力。雪球财经和 Linkedln 的移动版网站均
是这种案例,撇弃 同步等待式的顺序请求,大胆采用并行I/O,加速数据的获取进而提升
Web 的渲染速度。

• 云计算平台提供 Node 支持。微软将 Node 引入 Azure 的开发中,阿里云、百度均纷纷
在云服务器上提供 Node 应用托管服务,Joyent 更是云计算中提供 Node 支持的代表。这类
平台看重 JavaScript 带来的开发上的优势,以及低资源占用、高性能的特点。

• 游戏开发领域。游戏领域对实时和并发有很高的要求,网易开源了 pomelo 实时框架,
可以应用在游戏和高实时应用中。

• 工具类应用。过去依赖 java 或其他语言构建的前端工具类应用,纷纷被一些前端工程
师用 Node 重写,用前端熟悉的语言为前端构建熟悉的工具。

NodeJs 环境搭建

  • Node.js 和 Java 非常像,跨平台的。不管是 Linux 还是 windows 编程是完全一致的。Linux 版本的 Node.js 环境和 windows 环境是不一样的,但是编 程语言一样。
  • 官网:https://nodejs.org/en/下载稳定版本、双击下一步下一步安装。

安装完成打开 CMD,输入:

node -v

Nodejs介绍和环境搭建的更多相关文章

  1. App自动化测试-1.App自动化介绍和环境搭建

    App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...

  2. Python介绍及环境搭建

    摘自http://www.cnblogs.com/sanzangTst/p/7278337.html Python零基础学习系列之二--Python介绍及环境搭建   1-1.Python简介: Py ...

  3. Django 01 django基本介绍及环境搭建

    Django 01 django基本介绍及环境搭建 #http服务器 #用来接收用户请求,并将请求转发给web应用框架进行处理 #Web应用框架 #处理完请求后在发送给http服务器,http服务器在 ...

  4. [springboot 开发单体web shop] 1. 前言介绍和环境搭建

    前言介绍和环境搭建 简述 springboot 本身是为了做服务化用的,我们为什么要反其道使用它来开发一份单体web应用呢? 在我们现实的开发工作中,还有大量的业务系统使用的是单体应用,特别是对于中小 ...

  5. Maven介绍及环境搭建

    Maven介绍及环境搭建 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建.报告和文档的软件项目管理工具. 下载Maven boot:类加载器框架,Maven使用它加在自 ...

  6. Maven快速入门(一)Maven介绍及环境搭建

    做开发的程序员都知道,在系统开发需要各自各样的框架.工具.其中有一种工具不管你是初级程序员还是高级程序员都必须熟练掌握的,那就是项目管理工具(maven.ant.gradle).接下来就总结Maven ...

  7. centos7下stf安装介绍(一)----环境搭建

    重要:node version需要8.x.x 介绍 stf 全称 Smartphone Test Farm ,一款WEB 端移动设备批量管理工具(Remote control all your Sma ...

  8. react介绍、环境搭建、demo运行实例

    React官网:https://reactjs.org/docs/create-a-new-react-app.html cnpm网址:http://npm.taobao.org/ 1.react介绍 ...

  9. 使用WIF实现单点登录Part I——Windows Identity Foundation介绍及环境搭建

    首先先说一下什么是WIF(Windows Identity Foundation).由于各种历史原因,身份验证和标识的管理一般都比较无规律可循.在软件里加入“身份验证”功能意味着要在你的代码里混进处理 ...

随机推荐

  1. [AI] 切换cuda版本的万金油

    1. 环境 ubuntu16.04 GTX1080Ti x 4 nvidia-418 cuda-10.1 pytorch1.0.0 目标:在最新的显卡驱动下,使用不同版本的cuda和深度学习框架来执行 ...

  2. jupyter notebook中导入其他ipynb文件中的代码

    %%capture %run "../Untitled Folder 3/2nn.ipynb" %%capture 抑制输出%run "../Untitled Folde ...

  3. 使用js对社会信用代码进行正则验证

    注:参考了该博客(https://blog.csdn.net/qq_37142340/article/details/80695187)进行了一些修改,本文验证使用在微信小程序上. 直接贴代码: va ...

  4. wecenter系统关于标题及seo的修改

    wecenter整个系统好像根本就没有考虑过SEO优化,就连Title的识别也是随意的许多,在使用这个cms来完成我们自己的需求的时候,适当的修改是比不可少的.下面说说title标题修改方法. 今天分 ...

  5. wordpress更新出现Briefly unavailable for scheduled maintenance. Check back in a minute.

    今天ytkah在更新wordpress插件时出现了Briefly unavailable for scheduled maintenance. Check back in a minute.查找了相关 ...

  6. c#中的多态学习总结

    c#的多台方法,大体上和c++的类似,但是有点区别的,我这里刚刚初学,因此把重点记录下. 多态是同一个行为具有多个不同表现形式或形态的能力. 多态性意味着有多重形式.在面向对象编程范式中,多态性往往表 ...

  7. super()函数

    1.简单的使用 在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如: 在上面,A ...

  8. learning scala list.collect

    collect will apply a partial function to all elements of a Traversable and return a different collec ...

  9. openjdk k8s port-forward 连接容器jmx服务

    jmx 是java 自带的,如果需要使用我们只需要添加对应的配置即可,以下演示docker 集成jmx 使用kompose 生成k8s 的部署文件,使用port-forward 进行连接,所以java ...

  10. Xamarin.Forms 开发热加载利器 HotReload 推荐

    https://github.com/AndreiMisiukevich/HotReload