《nodejs实战》读书笔记

来源:互联网 发布:ubuntu anaconda安装 编辑:程序博客网 时间:2024/05/31 00:40

好久都没写博客了,这次看完了nodejs这本书,但是自己还是不会写,所以要总结一下,加深一下印象。

这本书是以一个个的项目为基础来展开的,每一章都是一个项目。

第一章通过docker快速发布Nodejs应用。这里面因为是使用linux系统进行示例开发的,而我linux学的不行就没能实践,看了一下用docker开发应用的思路。看完之后感觉docker其实没什么难的,他是一个为开发者和运维管理员搭建的开放平台软件,可以在这个平台上创建,管理和运行生产应用。这样开发者就可以开发自己的应用发布到docker,然后可以很方便的进行移植,使用docker之后,然后接下来的开发还是后端基本的东西,使用nginx作为nodejs前端webserver,开发应用。,docker进行发布应用,最后讲了用jenkins配置,并自动化部署nodejs项目,就是现在公司都会用的自动化部署平台,省去了每次手动的部署步骤。

第二章:开发OAuth2认证服务器
现在都是rest+json风格的api,当api服务器对外提供服务时,需要一种方式来验证api使用者的权限,这章选用了当前比较流行的OAuth2认证作为例子。

关于OAuth认证的流程我简单总结一下,第一步引导需要授权的用户到web授权页面,第二步如果用户同意授权,则页面跳转至YOUR_REGISTERED_REDIRECT_URI/?code=CODE,生成用于获取access_token的authorization_code,跳转回申请授权的应用。
第三步:应用接收到第2步中回调的code之后,请求一下地址获得access_token
第四步,在成功获取到access_token后,使用获得的OAuth2.0 Access Token调用api,在请求api时一般需要带上一下两个参数:source:为当前应用的app_key
access_token,为在第3步中获取到的access_token

第三章基于RabbitMQ搭建消息队列
这个软件是用来解决web服务或应用服务器间的通信问题,通常我们对处理大并发而带来的cpu或i/o密集型问题最好的控制方法就是我们使用消息队列。
这里有一个比较就是RabbitMQ方案和HTTP方案的对比,http协议有一个缺陷,他无法控制请求的频率,比如有这样的场景通过http协议就可能会有问题了。

第四章 编写命令行工具-打造一个静态博客系统
这个博客系统是我唯一一个照着书上写出来了,这里面主要是要用node提供的几个模块,commander(解析命令行参数)、markdown-it(渲染markdown格式的文档),server-static(静态文件服务中间件),express(web框架),swig(swig语法模版引擎),rd(遍历目录下的所有文件,包括子目录),fs-extra:扩展fs模块的一些方法,open(使用系统程序打开指定文件或网址),moment(解析格式化日期时间),通过这些模块编写命令行工具,启动web服务器渲染文章页面文章元数据增加模板渲染文章列表生成静态博客,配置文件,创建空白博客模版

第五章:基于koa快速开发web应用
这一章我没有看懂,自己后端知识太薄弱,这一章讲解的是es6中的生成器,yield,以及Nodejs下一代web开发框架-koa及其中间件的用法。
最后介绍了一个论坛系统的开发,这个系统的开发要经历几个步骤,1.基础项目的搭建
2.路由和功能设计 3.自定义模型 4.theme的设计 5.注册 6.登录与登出 7.主页与版块 8.用户页 9.发表页与话题页 10.测试 11.部署

0 0
原创粉丝点击