继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第2天 Node.js开发博客——CommonJS模块化、服务端与前端的区别

皮小西
关注TA
已关注
手记 14
粉丝 8
获赞 3

课程信息

课程名称: Node.js+Express+Koa2+开发Web Server博客
课程章节: 第2章 nodejs 介绍
课程讲师: 双越

课堂笔记

1、CommonJS模块化

1.模块化规范种类

这两个比较流行:CommonJS(ES5的Node环境)、ES6

这两个基本不用:AMD、CMD

2.CommomJS要点

每个文件都可当作一个模块。

在服务器端:模块的加载是运行时同步加载的。

在浏览器端:模块需要提前编译打包处理。

3.暴露方式(暴露模块)

格式:

module.exports = 变量名

exports.xxx = 变量名

4.引入方式(引入模块)

格式:

const xxx = require(xxx)

5.基本案例

a.js:

function add (a, b) {

return a + b

}

function mul (a, b) {

return a * b

}

// 统一暴露

module.exports = {add,mul}

b.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)

console.log(‘arr…’, arr)

2、服务端与前端的区别

1.服务端稳定性

server端可能会遭受各种恶意攻击和误操作。
单个客户端可以意外挂掉,但是服务端不能。
课程后面会讲解使用PM2做进程守候。

2.考虑CPU和内存(优化、扩展)

客户端独占一个浏览器,内存和CPU都不是问题。
server端要承载很多请求,CPU和内存都是稀缺资源。
课程后面会讲解使用stream写日志,使用redis存session。

3.日志记录

前端也会参与写日志,但只是日志的发起方,不关心后续。
server端要记录日志、存储日志、分析日志,前端不关心。
课程后面会讲解多种日志记录方式,以及如何分析日志。

4.安全

server端要随时准备接收各种恶意攻击,前端则少很多。
如:越权操作,数据库攻击等。
课程后面会讲解登录验证,预防XSS攻击和SQL注入。对于攻击而言,前端一般占30%责任,后端占70%责任。

5.集群和服务拆分

产品发展速度快,流量可能会迅速增加。
如何通过扩展机器和服务拆分来承载大流量。
本课程虽然是单机器开发,但是从设计上支持服务拆分。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP