中小企业网站建设方案,网站开发要求描述,wordpress多域名绑定,推广引流方法与渠道一 Node.js 简介 1.1 官网 https://nodejs.org/en/ 官网介绍#xff1a; Node.js是一个构建在 Chrome 浏览器V8引擎上的 JavaScript 运行环境。 Node.js 使用了事件驱动、非阻塞I/O模型#xff0c;这些都使它轻量、好用。 Node.js 的包生态#xff08;npm#xff09;#…一 Node.js 简介 1.1 官网 https://nodejs.org/en/ 官网介绍 Node.js是一个构建在 Chrome 浏览器V8引擎上的 JavaScript 运行环境。 Node.js 使用了事件驱动、非阻塞I/O模型这些都使它轻量、好用。 Node.js 的包生态npm是世界上最大的开源库生态系统。 ps: 解决性能问题而发明的 Node.js 异步 I/O绝大多数的网站 I/O 是非常多的I就是 input 数据的读取O 就是 Output 数据的写入 但是 I/O 的时候 CPU 是命令磁盘去做事情此时 CPU自己就闲置了 这种模式叫做同步 I/O 同步synchronous当系统遇见了一个需要耗费大量时间的事情的时候选择死等。 异步Asynchronous当系统遇见了一个需要耗费大量时间的事情的时候不死等先做后面的事情耗时事情做完之后执行回调函数 Node.js 的哲学是一个专注于实现高性能 Web 服务器优化的专家几经探索几经挫折后 遇到 V8 而诞生的项目。 Node.js 向下兼容做的非常好所有的高版本会 deprecate建议放弃一些老版本的API 但不会完全不支持 在 Node.js 和 io.js 首次融合的4.0.0版本中开发者们可以看到其对 ES6 特性的扩展支持 并且大多数都是默认启用的比如classes、typed arrays、generators、Promises、Symbols、collections、arrow functions、block scoping、template strings等等。 1.2 安装 到官网下载有稳定版最新版 路径中不要有中文 安装完成后 命令行 $ node -v 查看版本 注意 $ 符号是 Linux 系统中后面会学习命令行中普通用户的表示符号 注意我们输入的时候不要输入 $这里只是一个表示符号 $ cls 清屏 $ node xxx.js 运行 js 文件可直接交文件拖进来 $ d: 到 d 盘 $ cd xxx 进入 xxx 文件夹 此时有两种运行环境 1 浏览器 2 node 二 开发服务器 2.1 案例 文件要放在 c 盘 注意 node 文件的路径 绝对路径 结束挂起 ctrl c 此时 光标挂起没有返回 表示此时 node 正在执行一个监听 再浏览器127.0.0.12000 回车 访问 如果你要修改程序此时刷新浏览器没用必须 ctrlc 打断之后重新运行 页面运行结果 命令行 node 运行后就是跑了一个服务器若是 断开ctrl c ,再访问页面就访问不到了 在 node.js 文件的最后添加语句 console.log(node.js运行); 会在 cmd 中 node运行后显示 2.2 Node.js 是后台的东西 NodeJS 是 JavaScript 工作在了服务器端太牛逼啦我们的JS现在上天入地 查看源代码如果代码中有运算比如 34我们发现数字 7 是直接写上去的 没有 34的运算痕迹 原因就是 NodeJS 运行在服务器端而不是浏览器端。 服务器计算了数字 7 之后发给了浏览器就是扁平的、纯粹的 HTML 了没有任何程序。 至此我们已经证明了 NodeJS 运行在服务器端。我们使用 JS 开始开发服务器GET请求的处理、POST请求参数的处理、数据库的增删改查、Cookie、 session等等、路由。 2.3 NodeJS 没有服务器架构 Node.js 是一个让 JavaScript 运行在服务器端的开发平台它让 JavaScript 的触角伸到了服务器端。 但 Node 似乎和其他服务器端语言比如 PHP、ASP、JSP 有点不同 ● Node.js 不是一种独立的语言与 PHP、JSP、Python、Perl、Ruby 的“既是语言也是平台”不同Node.js的使用JavaScript进行编程NodeJS是一个工具语言仍然是 JavaScript。 ● 与 PHP、JSP 等相比Node.js 跳过了 Apache、Tomcat、Nginx、IIS 等 HTTP 服务器它自己不用建设在任何服务器软件之上。Node.js 的许多设计理念与经典架构LAMP有着很大的不同可以提供强大的伸缩能力。 Node.js 自身哲学是花最小的硬件成本追求更高的并发更高的处理性能 Node.js 没有根目录的概念。 三 Node.js 特点 3.1 单线程 在 Java、PHP 或者 .net 等服务器端语言中会为每一个客户端连接创建一个新的进程。而每个进程需要耗费大约 2MB 内存。也就是说理论上一个 8GB 内存的服务器可以同时连接的最大用户数为 4000 个左右。要让 Web 应用程序同时支持更多的用户就需要增加服务器的数量或者增加服务器的内存数而 Web 应用程序的硬件成本当然就上升了。 Node.js 不为每个客户连接创建一个新的线程而仅仅使用一个线程thread。当有用户连接了就触发一个内部事件通过非阻塞I/O、事件驱动机制让 Node.js 程序宏观上也是并行的。使用 Node.js一个8GB内存的服务器可以同时处理超过4万用户的连接。 另外单线程的带来的好处还有操作系统完全不再有线程创建、销毁的时间开销。 输出中文乱码 查 node API: http 模块 ctrl f : setHeader 选择 response.setHeader(Content-Type, text/html;charsetutf-8); 文件的保存类型也要设置为 utf-8 写 路径 时 ./ 在linux 必须加 转载于:https://www.cnblogs.com/Bijou/p/10211459.html