基于Node.js项目实战开发个性化全网内容抓取平台
本课程将通过8周的时间,以个性内容聚合站项目为实战,带你从0基础熟悉后端开发各方各个面,成为具备独立开发能力的入门级Node.js后端开发工程师。课程内容涵盖时下最流行的后端技术,包括:网络爬虫、微信开发、分布式系统、数据库开发(NoSQL)和设计、高可用高可拓展服务、消息队列、REST接口设计、负载均衡和调优等等。
基础知识预备
命令行操作:*nix下基础命令行操作
版本控制系统简介:为何我们需要GIT,SVN等版本控制系统,以及这些系统如何帮助现代软件工程师高效协作开发
GIT:GIT基础命令操作,以及如何向开源社区贡献代码,这也是本课提交作业的方式
环境配置:命令行、NVM、NPM、Node.js、IDE配置和ESLint\JSLint配置
Hello World: 如何使用Node.js搭建一个服务
基础篇
第一周:
JS0基础教程:手把手教你写Javascript
HTTP:TCP、UDP和HTTP协议的介绍,HTTP为何称霸及其特点,HTTP报文分析
实战:分析HTTP请求和网页,爬取我们需要的信息
第二周:
ES6基础:学习实用而强大的ES6,打牢基础
实战:使用ES6和Node.js来编写一个简单的HTTP服务
第三周:
数据库基础:MongoDB介绍、CRUD及性能初步
实战:使用mongoose合理设计表结构、存储我们爬取的数据
爬虫进阶:数据清洗、归类以及反爬策略
实战:使用定时任务自动爬取内容
第四周:
错误处理:正确地发现和处理服务的错误
日志:日志系统搭建、分析
实战:正确记录并处理错误
进阶篇
第五周:
Rest接口设计:何为REST接口,以及如何使用REST风格接口让开发更加高效
实战:使用REST风格服务提供可访问的爬取平台
第六周:
分布式系统:何为分布式系统,几种常见分布式系统的介绍,如何使用分布式系统提供稳定高效的服务
实战:使爬虫具有分布式爬取、错误同步和自动分工的功能
第七周:
数据库进阶:redis支持的数据结构和原理简析、使用redis作为高效的缓存和跨进程通讯方式
实战:使用redis分隔爬虫集群,分配爬取任务
以下进阶内容,部分会使用录播的方式讲解,部分会作为选修课加入到课程中
实战:测试并定位服务中的性能瓶颈
安全:爬虫识别和防范,HTTPS的原理及应用
实战:服务安全改造
实战:Nginx安装、配置和瓶颈以及相应优化方法
百度网盘:https://pan.baidu.com/s/1HtqIBYABGMb4JAQYlqur6w 提取码:vki3
备用地址:https://pan.baidu.com/s/15704Z16IyDWAz2cBpW_O_g 提取码:0h9y
备用地址:https://pan.baidu.com/s/1_oIWmcLMH__X2cIMnunFrw 提取码: 9gff
本文出自:DIY博客园,链接:https://www.diybloghome.com/propment/2119.html,转载请注明!