七仔的博客

七仔的博客GithubPages分博

0%

我的博客架构改变历程

记录下博客从SSM->微服务->单体的架构调整还有未来的设想

我的博客架构改变历程

SSM后端

代码已遗失,我记得前端为JSP,再往前的版本就找不到了

那时候还用了百度UEditor做富文本编辑,这玩意是真难使。。当时好像已经停止维护了,还得改源码

用了七牛云做CDN,当时只用来存js或者css的,这个真不错,现在还在用,空间大,CDN费用还低

用了三个服务器,一个做网关,附带文件服务器,nginx做负载均衡,另外两个服务器部署了两个SSM

还做了mysql主主备份,就是两个mysql互为主从备份

七仔的博客SSM架构

SpringCloud微服务后端 + Vue博客前端 + Vue管理前端

基于PigX个人版,未开源

后端以SpringCloud为基础,集合了Nacos + Gateway + Auth + Admin + 博客服务 + xxl-job 一共七个服务

博客前端以Vue为基础,进行各个页面的开发,模块化的开发还是挺方便的

博客管理端直接以PigX附带的Avue为框架开发,更简单

UEditor的博客继续留着,后面写的都是Markdown格式的了,前端通过判断来进行渲染

开始意识到SEO问题,通过Nginx进行header判断,发送到nodejs,nodejs调用python,python调用火狐进行渲染

SpringBoot后端 + Vue博客前端 + Vue管理前端

上面的结构再加上mysql和redis什么的需要将近4G的服务器才能起得来,并且因为PigX的协议不能开源,所以就想自己搞一个

从SpringBoot直接单体开发,比微服务占用内存少了太多

Vue管理前端以Element-UI重写,去掉了Avue的框架

使用marked做编辑器(忘了是这版还是上版,待验证)

Vue博客前端没什么大变化,不过重写了之前UEditor格式的博客改都为了Markdown

全部改为Docker形式部署,mysql,redis,后端,博客前端,管理前端,puppeteer-renderer,通过docker-compose管理

puppeteer-renderer替换了上个版本的nodejs+python+浏览器,不过本质还是通过浏览器进行渲染再返回,速度还是慢了

SpringBoot后端 + Thymeleaf博客前端 + Vue管理前端 (开发中)

由于上个架构的占用还是挺大,而且SEO还是麻烦,所以有个这个版本

由于管理前端没必要做SEO,所有还是使用Vue为框架

博客前端使用Thymeleaf重写,通过服务端渲染,这样就可以去掉puppeteer-renderer

从mysql换为sqlite,一个是博客没必要这么庞大的数据库,二是省了部署的步骤,三是省内存

redis同理,没必要做加速(待验证)

将编辑器从marked换成了editor.md

争取做到一个容器或者一个jar包就能跑起来

增加MetaWeblog的支持

增加RSS订阅的支持

此为博主副博客,留言请去主博客,转载请注明出处:https://www.baby7blog.com/myBlog/127.html

欢迎关注我的其它发布渠道