博客后端实现方式调整

博客后端实现方式调整

老的博客系统发表文章不是很方便,基于这个考虑,这几天终于忍不住(忍了有几年😄)对博客后端进行了重写。

改动如下:

  1. django+mysql的架构改成了flask+文件
  2. 增加了归档&分类页面
  3. 砍掉了搜索(之后应该会重新加上)
  4. 加入了畅言评论插件

 

改动后的写作流程变为:本地用markdown工具编写文章 --> git提交到gitlab --> web hook自动触发jenkins发布到服务器 -->结束。

 

本次最大的改动主要是数据存储方式的改变,弃用了mysql,改用直接读写markdown格式的文件,有点返璞归真的味道。用文件方式有诸多好处。

第一,可以跟本地的markdown工具结合起来,比如本人喜欢用的typora。本地的文件目录结构和线上的文件目录是同一份,意味着本地写的文章(包含有图片的),不用调整就可以直接发布到服务器;

第二,多端写作更加方便。文件管理除了用git之外,还用了网盘(iCloud)。在家里写到一半的文章,去到公司可以继续接着写,网盘会自动完成文件同步工作;

第三,备份和迁移方便。博客文章最终放在git上面,根本不需要额外的备份操作。另外作为个人博客服务器,是经常更换的,如果用mysql,无疑会增加迁移成本。

第四,可以采用本地markdown工具渲染后的html文件,显示更加美观。老的系统,是调用markdown2这个python包渲染md文件,但渲染出来的页面往往差强人意。

 

当然,不用mysql之后,统计文章访问量和存储运行时数据,就变得稍微麻烦了点。