Nodejs的基础概念

简介

nodejsJavaScript的运行环境

我们心目中的代码的运行环境

  • 运行在服务器端,web server
  • 运行在浏览器端,也就是运行在本地,作为打包或是构建工具

对于nodejs来说它的运行环境是在服务器端而不是浏览器端

nodejs的实战
安装和下载

一.使用普通方式
访问官网 http://nodejs.cn 来下载并且安装
二. 使用nvm进行安装(可以多个node的版本进行切换)
使用mac系统的话,使用brew install nvm就可以进行安装
使用windows的话,在github中搜索nvm-windows,里面有下载的教程

Nodejs与JavaScript的区别

ECMAScript(ES)-- 相当于一个规范

  • 定义了语法,JS(JavaScript)nodejs都要去遵守
  • 包含变量定义,循环,判断,函数
  • 原型,原型链,作用域和闭包,异步

Javascript(JS)

  • 使用了ES的规范,外加web API(W3C标准)缺一不可
  • DOM操作,BOM操作,时间绑定,ajax
  • 二者相互结合,可以完成浏览器的操作

Nodejs

  • 使用ES规范+nodejsapi
  • nodejsapi:处理http请求,处理文件等
  • 二者结合,完成服务端(server)的任何操作
commonjs的模块化与nodejs的debugger

a.js

//  结构的语法
const {add,mul} = require('./a')
const _ = require('lodash')

const sum = add(10,20);
const result = mul(100,200);

console.log(sum)
console.log(result)

const arr = _.concat([1,2,3],4);
console.log('arr...',arr)

b.js

function add(a,b){
    return a+b;
}

function mul(a,b){
    return a * b;
}
module.exports = {add , mul};

编译的命令是:node b.js

Server开发和前端开发的区别

  • 服务器的稳定性
  • 考虑内存与CPU(优化和扩展)
  • 日志记录
  • 安全
  • 服务器的拆封与集群
服务器的稳定性
  • server端可能承受各种恶意的操作与误操作(要承受很多的前端请求)
  • 当个客户端可以意外的挂掉,但是服务器不能
  • PM2的进行守护
考虑CPU与内存
  • 客户端独自占用一个浏览器,内存和CPU都不是问题
  • Server承载了很多的请求,CPU与内存都很稀缺
  • stream写日志来优化,使用redissession来扩展
日志记录
  • 前端会参与写日志,但只是日志的发起方,并不关心后续
  • server也要记录日志,存储日志,分析日志,这些前端都不关心
安全

server要随时接受各种的恶意攻击,前端很少要考虑这样的安全问题
ps:越权操作,数据库的攻击
通过登陆验证,预防XSSsql注入

集群和服务拆封

用上面的方式来进行流量的分担

你可能感兴趣的:(Nodejs的基础概念)