node.js从入门到放弃《什么是node.js》

keep      2022-02-11     606

关键词:

1.什么是node.js

Node.js是一个后端的Javascript运行环境(支持的系统包括*nux、Windows),这意味着你可以编写系统级或者服务器端的Javascript代码。

Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。

关于事件驱动的两个实例:
在美国去看医生,需要填写大量表格,比如保险、个人信息之类,传统的基于线程的系统(thread-based system),接待员叫到你,你需要在前台填写完成这些表格,你站着填单,
而接待员坐着看你填单。你让接待员没办法接待下一个客户,除非完成你的业务。 想让这个系统能运行的快一些,只有多加几个接待员,人力成本需要增加不少。 基于事件的系统(event
-based system)中,当你到窗口发现需要填写一些额外的表格而不仅仅是挂个号,接待员把表格和笔给你,告诉你可以找个座位填写,填完了以后再回去找他。
你回去坐着填表,而接待员开始接待下一个客户。你没有阻塞接待员的服务。 你填完表格,返回队伍中,等接待员接待完现在的客户,你把表格递给他。如果有什么问题或者需要填写额外的表格,他给你一份新的,然后重复这个过程。 这个系统已经非常高效了,几乎大部分医生都是这么做的。如果等待的人太多,可以加入额外的接待员进行服务,但是肯定要比基于线程模式的少得多。
第二个例子是快餐店点餐。

在基于线程的方式中(thread-based way)你到了柜台前,把你的点餐单给收银员或者给收银员直接点餐,然后等在那直到你要的食物准备好给你。收银员不能接待下一个人,除非你拿到食物离开。
想接待更多的客户,容易!加更多的收银员! 当然,我们知道快餐店其实不是这样工作的。他们其实就是基于事件驱动方式,这样收银员更高效。只要你把点餐单给收银员,某个人已经开始准备你的食物,而同时收银员在进行收款,当你付完钱,
你就站在一边而收银员已经开始接待下一个客户。在一些餐馆,甚至会给你一个号码,如果你的食物准备好了,就呼叫你的号码让你去柜台取。关键的一点是,你没有阻塞下一个客户的订餐请求。
你订餐的食物做好的事件会导致某个人做某个动作(某个服务员喊你的订单号码,你听到你的号码被喊到去取食物),在编程领域,我们称这个为回调(callback
function)。

 

2.在Node上运行的JavaScript相比其他后端开发语言有何优势?

最大的优势是借助JavaScript天生的事件驱动机制加V8高性能引擎,使编写高性能Web服务轻而易举。

 

node.js入门

  开始之前,安利一本正在看的书《站在两个世界的边缘》,作者程浩,上帝丢给他太多理想,却忘了给他完成理想的时间。OK,有兴趣的可以看一看。  node.js如标题一样,我也是刚开始接触,大家一起学习,有不当的地方... 查看详情

koa2从入门到进阶之路(代码片段)

首先我们先来了解一下Koa是什么,https://koa.bootcss.com/,这是Koa的官方网站,映入眼帘的第一句就是 Koa--基于Node.js平台的下一代web开发框架。在学习Koa之前我们应对Node.js有一定的基础,我们都知道:Node.js是一个异步的世界,... 查看详情

node.js入门系列--node.js简介

什么是NodeJSJS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。每一种解析器都是一个运行环境,不但允许JS定义各种数据... 查看详情

node.js学习07:学习资源(书籍+网站+视频)汇总!

...e.js实战中国程序员6》网站资源CNODE社区Node.js简易教程Node入门Node.js包教不包会CNODE-新手入门其他参考链接Node.js究竟是什么?Node.js是用来做什么的?什么是node.jsNode.js使用场景&实战Node.js雪球实战半年谈雪球上的N 查看详情

带你入门nodejs第一天——node基础语法及使用(代码片段)

带你入门nodejs第一天——node基础语法及使用带你入门nodejs第二天——http模块化npmyarm带你入门nodejs第三天—express路由带你学习nodejs第四天——身份认证及缓存1node概述为什么要学习node.js为什么要学习服务端的开发?通过学习... 查看详情

node.js--入门

Node.js理解:Node.js就是运行在服务端的js,Node.js是一个基于ChromeJavaScript运行时建立的一个平台。Node.js使用了一个事件驱动、非阻塞式I/O的模型,使其轻量又高效。Node.js的包管理器 npm,是全球最大的开源库生态系统。Node.js安... 查看详情

如何使用 Express 从 Node.js 登录到 ELK?

...ElasticSearch并使用Kibana可视化日志。这样做的正确方法是什么?我应该写一个json行的日志文件并用Logstash读取它吗?【问题讨论】:【参 查看详情

从 Node.js 中的模块导出函数的语法是啥?

...functionfromamoduleinNode.js?从Node.js中的模块导出函数的语法是什么?【发布时间】:2017-12-2314:57:27【问题描述】:从Node.js中的模块导出函数的语法是什么?functionfoo()functionbar()exportfoo;//Idon\'tthinkthisisval 查看详情

前端涨薪必读,node.js入门保姆级教程(代码片段)

Node.js保姆级教程1.Node基本概念2.第一个node.js程序3.node创建get请求4.node创建post请求1.Node基本概念1.1node.js是什么?平常的js代码只能在浏览器运行,浏览器一关,就完犊子Node.js就是运行在服务端的JavaScript。1.2客户端与服务端... 查看详情

前端涨薪必读,node.js入门保姆级教程(代码片段)

Node.js保姆级教程1.Node基本概念2.第一个node.js程序3.node创建get请求4.node创建post请求1.Node基本概念1.1node.js是什么?平常的js代码只能在浏览器运行,浏览器一关,就完犊子Node.js就是运行在服务端的JavaScript。1.2客户端与服务端... 查看详情

使用 node.js/Express 从 HTTP 重定向到 HTTPS

...e.js/Express【发布时间】:2019-07-1702:46:28【问题描述】:有什么方法可以改变我的网络应用程序以侦听HTTPS而不是HTTP。我正在使用node.js/express。我需要它来监听HTTPS,因为我使用的是地理定位,Chrome不再支持,除非从HTTPS等安全上... 查看详情

创业笔记-node.js入门之javascript与node.js

JavaScript与Node.jsJavaScript与你抛开技术,我们先来聊聊你以及你和JavaScript的关系。本章的主要目的是想让你看看,对你而言是否有必要继续阅读后续章节的内容。如果你和我一样,那么你很早就开始利用HTML进行“开发”,... 查看详情

windows下node.js开发入门

没事儿捣腾了一下Node.js,跑了个HelloWorld,特此记录一下。Windows下安装Node.js环境到Node官网http://nodejs.org就能够下载到安装包。我是Win764位,訪问Node官网,能够看到最新版本号是0.12.7,点击INSTALL就能够下载msi文件,然后双击就能... 查看详情

《node.js入门》windows7下node.jsweb开发环境搭建笔记

...ws下的搭建方法,使用CentOS 的小伙伴请參考:《Node.js入门》CentOS6.5下Node.jsWeb开发环境搭建笔记Node.js是什么?我们看看百科里怎么说的?JavaScript是一种执行在浏览器的脚本,它简单,轻巧。易于 查看详情

node.js基本介绍和服务端创建的入门案例

node.js介绍  简单去理解Node.js是JavaScript的一个平台,Node.js这个平台允许使用JavaScript来作为后台语言。  Node.js是一个基于ChromeJavaScript运行时建立的一个平台。  Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引... 查看详情

node.js(初识)

...到Node.js,也开始深入学习。  Node.js具体是用来做什么的,我想一开始接触Node.js的初学者都会提出这个问题,想知道它是用来做什么的就需要知道它是个什么东西,在Node.js官网是这么介绍的:Node.js是一个基于Chr 查看详情

创业笔记-node.js入门之基于事件驱动的回调

基于事件驱动的回调这个问题可不好回答(至少对我来说),不过这是Node.js原生的工作方式。它是事件驱动的,这也是它为什么这么快的原因。你也许会想花点时间读一下FelixGeisendörfer的大作Understandingnode.js,它介绍了一些... 查看详情

从 Node.js POST 到 PHP

】从Node.jsPOST到PHP【英文标题】:POSTtoPHPfromNode.js【发布时间】:2014-02-2121:18:36【问题描述】:我正在尝试将一些数据从Node.js应用程序发布到PHP脚本。目前我只是在构建一个概念证明,但我无法将实际数据传递到PHP端。请求通过... 查看详情