myblog_阶段目标

我的博客项目

  • 实现一个和微信公众号联动的博客项目
晚上不能写代码, 一写就睡不着,
啊啊啊啊

一阶段

  • 快速实现一个内容丰富的博客项目

1. 前端功能

  • 主页展示优质文章
  • 主页树型分类
  • 文章详情显示

2. 后端接口

  • 获取分类
  • 获取文章
  • 获取优质推荐文章

3.备注

a. 内容获取

  • 通过的打包下载功能下载自己的内容

b. 数据持久化

  • 使用文件持久化

原计划使用sql的, 但考虑到前期内容添加不变, 不利于快速整合资源 决定使用文件形式做数据持久化
优点: 前期管理方便直接修改文件即可
缺点: 文件读取的io操作将会严重影响程序的执行效率
解决办法: 使用接口缓存, 原计划使用redis做接口缓存,但考虑到这是一个个人博客项目,内容相对较少, 所有md 文档加起来不到目前还不到10M, 决定后期自定义一个 内存缓存中间件(这样比redis效率更高,因为它将不会涉及网络和分布式)

二阶段

1 使用tornado重构一阶段项目

2. 实现内存缓存中间件

  • 注意: 更新文章后刷新缓存的接口

前期实现:项目启动和文章更新 刷新缓存

后期: 单条数据超时和默认超时时间设置

3. 处理图片的显示

注意: 图片太大 不能走缓存 只能使用静态资源

难点: 实现文章目录下的images 和静态资源路径对接

三阶段

美化前端页面为主

下面内容后期慢慢添加

## 1. index
### a. 结构
    结构
        头部 12
        左侧 右侧 3:9
        尾部 12
    头部
        主页 搜索   订阅  微信公众号关注
    左侧导航
        个人简介
        分类带2级分类
    右侧内容
        置顶文章
        时间倒序文章
    尾部
        友情链接 备案信息 微信公众号订阅 关于
### b. 功能
    分类点击
        右侧内容:刷新为当前分类内容
        右侧增加显示:分类文章目录 布局363


## 后端

1 实现批量数据添加

markdown 文本显示

markdown图片显示

置顶接口

实现后端管理

​   分类管理: 增删改加排序(增加显示顺序)



微信公众号订阅推送

## 模型

分类

id
parentid (父级id)
name
sortnum (显示序号)
文章数目


标签

id
name
热度 (一次点击或浏览相关文章+1)
文章数目

文章

id
分类
tags
title  (标题)
content     (内容)
createtime  (创建时间)
updatetime  (最后跟新时间)

文章动态

绑定发布和跟新
异步公众号推送





# 视图

分类 全套
tags 全套
文章 全套


# 后期

## 留言板

标题:
分类:
username:默认游客
headpic: (头像)
content: 内容

## 隐形
时间
ip


## 权限
## 评论
## 机器人在线聊天室

你可能感兴趣的:(myblog_阶段目标)