Jay

从零开始架构node应用-总体架构

2014年6月计算机专业毕业后,前端开发两年经验,后来感觉在公司内前端的职能太弱,能做的事不多,随后便转为后端开发。后端为php,框架为国外的框架。数数也近4年多了,期间技术文章也不怎么写,技术积累都比较散。
回头看,前端,后端都有了些许积累,我想可能需要做一些东西,让我把知识融会贯通和扩展起来。随后我决定搭建一个博客,市面上有很多现成的框架,但是有很大的局限性,也达不到我的初衷。由于node具有后端前端语法相对一致的情况,所以我选择的node框架作为底层框架。技术选型的时候,底层框架我看了很多,koa本身没有什么中间件,更轻量化。最后我选择了koa


整体架构还有很大的进步空间,后续也会慢慢迭代优化的

架构图

blog架构图

思维导图

技术清单

后端

koa-symphony

名称 状态
开发环境和生产环境
koa中间件自动加载
session
user provider
模版引擎twig
orm sequlize
图片裁切
邮件发送
路由
baseDao
baseService
csrf
redis
websocket
cluster负载均衡
后台错误码
resetful
日志系统
国际化
单元测试

blog业务

名称 状态
用户邮箱注册
用户登录
文章创建,编辑,删除,浏览量
分页组件
文章的点赞
用户手机注册
单元测试
服务监控
后台用户管理
后台文章管理

前端

业务

名称 状态
验证组件
图片裁切组件

webpack框架

名称 状态
es6编译
less编译
版本控制
js,less语法校验
多线程编译
css压缩优化
打包进度显示
图片字体打包

运维

名称 状态
发布脚本
负载均衡
mysql主从备份
分布式数据库
读写分离
动静分离