博客开发过程的碎碎念
- Published on
本文最近一次更新于 1131 个天前,其中的内容很可能已经有所发展或是发生改变。
前言
很久没有更新博客文章了,博客系统倒是一直在更新 (测试环境也是更新) 。今天终于发了一个新版本的博客,所以写一篇记录一下这么久的开发记录。于 2023 年 12 再次更新文章。
到了 2023,基本没有在维护 golang 的博客了,采用偏向与静态渲染的博客
最早的博客
我最早的博客使用hexo
搭建的静态博客,当时刚开始学习前端,就自己写了一个简陋的主题来展示文章,算是自己在前端的一个小的入门了。因为当时没接触后端相关的技术,又因为在网上偶然看到一个大佬的动态博客imququ,阅读了里面大佬的挺多文章,萌生了用后端语言写一个博客的想法。
第二版博客 golang 动态博客
后面最终敲定了用 go 实现了一个博客,但是发现使用起来还是不方便,兜兜转转又回到了希望用 git 管理博客文章,使用 go 的好处就是,实现博客系统占用的内存很少,按照下面的配置,我在 1c500m 的外网服务器上能够稳定运行。 最早也考虑过 spring+mysql+elasticsearch,奈何囊中羞涩以及为自己的钱包考虑,为了一个博客不值买更大的机器。后面就考虑java -> golang
, mysql -> PostgreSQL
, elasticsearch -> meilisearch
的替换过程了。
下面是我第二版博客所用的技术栈:
- 博客系统
- golang
- gorm
- meilisearch
- PostgreSQL
- Nginx
- 部署
- debian
- Docker,本站使用 docker-compose 进行部署
- Github Action
- makefile
第三版 基于 nextjs 的博客
基于 nextjs 以及 contentlayer 开发的博客,基本实现了,但是外网服务器到期了,所以没发布到公网上。
第四版 基于 remixjs 开发的博 客
将原有 nextjs 的代码用于大量复用,大大加快了开发节奏,结合 chatgpt 解决问题,相比以往的博客开发轻松了很多。remixjs 开发相对与 nextjs 开发来说,实现方式更自由,不用花很多时间考虑是服务器端还是浏览器端(nextjs 我习惯 app page 的目录格式),也可以结合 express 增加中间件。
总结
对于我来说开发自己的博客其实就是当作一种娱乐,在过程中学习一些新知识,扩展自己的编程知识面为主要的目的。