博客后端实现方式调整
老的博客系统发表文章不是很方便,基于这个考虑,这几天终于忍不住(忍了有几年😄)对博客后端进行了重写。
改动如下:
django+mysql
的架构改成了flask+文件
- 增加了
归档&分类
页面 - 砍掉了
搜索
(之后应该会重新加上) - 加入了
畅言
评论插件
改动后的写作流程变为:本地用markdown工具编写文章 --> git提交到gitlab --> web hook自动触发jenkins发布到服务器 -->结束。
本次最大的改动主要是数据存储方式的改变,弃用了mysql,改用直接读写markdown格式的文件,有点返璞归真的味道。用文件方式有诸多好处。
第一,可以跟本地的markdown工具结合起来,比如本人喜欢用的typora。本地的文件目录结构和线上的文件目录是同一份,意味着本地写的文章(包含有图片的),不用调整就可以直接发布到服务器;
第二,多端写作更加方便。文件管理除了用git之外,还用了网盘(iCloud)。在家里写到一半的文章,去到公司可以继续接着写,网盘会自动完成文件同步工作;
第三,备份和迁移方便。博客文章最终放在git上面,根本不需要额外的备份操作。另外作为个人博客服务器,是经常更换的,如果用mysql,无疑会增加迁移成本。
第四,可以采用本地markdown工具渲染后的html文件,显示更加美观。老的系统,是调用markdown2这个python包渲染md文件,但渲染出来的页面往往差强人意。
当然,不用mysql之后,统计文章访问量和存储运行时数据,就变得稍微麻烦了点。