Nodejs介绍和环境搭建
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介绍和环境搭建的更多相关文章
- App自动化测试-1.App自动化介绍和环境搭建
App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...
- Python介绍及环境搭建
摘自http://www.cnblogs.com/sanzangTst/p/7278337.html Python零基础学习系列之二--Python介绍及环境搭建 1-1.Python简介: Py ...
- Django 01 django基本介绍及环境搭建
Django 01 django基本介绍及环境搭建 #http服务器 #用来接收用户请求,并将请求转发给web应用框架进行处理 #Web应用框架 #处理完请求后在发送给http服务器,http服务器在 ...
- [springboot 开发单体web shop] 1. 前言介绍和环境搭建
前言介绍和环境搭建 简述 springboot 本身是为了做服务化用的,我们为什么要反其道使用它来开发一份单体web应用呢? 在我们现实的开发工作中,还有大量的业务系统使用的是单体应用,特别是对于中小 ...
- Maven介绍及环境搭建
Maven介绍及环境搭建 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建.报告和文档的软件项目管理工具. 下载Maven boot:类加载器框架,Maven使用它加在自 ...
- Maven快速入门(一)Maven介绍及环境搭建
做开发的程序员都知道,在系统开发需要各自各样的框架.工具.其中有一种工具不管你是初级程序员还是高级程序员都必须熟练掌握的,那就是项目管理工具(maven.ant.gradle).接下来就总结Maven ...
- centos7下stf安装介绍(一)----环境搭建
重要:node version需要8.x.x 介绍 stf 全称 Smartphone Test Farm ,一款WEB 端移动设备批量管理工具(Remote control all your Sma ...
- react介绍、环境搭建、demo运行实例
React官网:https://reactjs.org/docs/create-a-new-react-app.html cnpm网址:http://npm.taobao.org/ 1.react介绍 ...
- 使用WIF实现单点登录Part I——Windows Identity Foundation介绍及环境搭建
首先先说一下什么是WIF(Windows Identity Foundation).由于各种历史原因,身份验证和标识的管理一般都比较无规律可循.在软件里加入“身份验证”功能意味着要在你的代码里混进处理 ...
随机推荐
- ubuntu16.04重置root密码
问题描述: 一个用户不能G附加多个用户组,在centos没有问题的.具体的还不清楚 问题解决: 重启进入启动项修改启动参数进入root中设置密码 参考: https://www.cnblogs.c ...
- quartz——JobExecutionContext和JobDataMap
控制器传值,需要根据对应值创建,启动以及对定时任务的相关操作:JobExecutionContext和JobDataMap基本用法,代码待优化,主要是用法吧第一:控制器, @RequestMappin ...
- Flooded! UVA - 815 (sort排序)
错了好多遍,不知道为啥出错,如果有大神发现,请求指点!!! 附错误代码(错的不知道怎么回事): #include<iostream> #include<cstdio> #inc ...
- .NET 使用 VLC 播放视频
使用 VLC 播放监控有几个月了,现在是多个项目中都有用到.在使用的过程中也有一些细节供大家参考. 一.对 VLC 的了解 VLC 是一个开源的跨平台多媒体播放器及框架. VLC 官方出的有播放器.编 ...
- python开发笔记之zip()函数用法详解
今天分享一篇关于python下的zip()函数用法. zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素按顺序组合成一个tuple,每个tuple中包含的是原 ...
- POJ - 2482:Stars in Your Window (扫描线 )
题意:二维平面上给你N颗星,给出星星的坐标,亮度: 然后给你一个W*H的窗口,问你最大的亮度和. 思路:扫描线,假设有一个inf*H的窗口,按照y排序,那么就把H范围内的星星放入了这个窗口(单调队列实 ...
- Oracle两表关联,只取B表的第一条记录
背景: A表.B表两表关联,关联出来的结果里B表有不止一条,需求是只要B表结果中的某一条(按某字段排序) 首先想到了直接写个带排序的子查询去匹配外围的值,从这个结果集中只要第一条,但是经过验证发现, ...
- msdtc不可用
在使用“经销商园地 网上订单处理程序”等程序时,如果程序报:服务器×××上的MSDTC不可用”,可以按照以下方法进行解决: 在windows控制面版-->管理工具-->服务-->Di ...
- LOJ P10011 愤怒的牛 题解
每日一题 day36 打卡 Analysis 非常水的二分模板,就直接二分答案,用贪心策略check就好了 #include<iostream> #include<cstdio> ...
- DOM内容梳理2
JavaScript-DOM2(内容整理) 这两天新的知识有点多有点杂一时半会没有整理过来,以后不出意外会一直更行. js节点类型(NODETYPE) 查看节点类型 nodetype属性,返回的结果会 ...