前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >蘑菇博客登顶了!

蘑菇博客登顶了!

作者头像
陌溪
发布2022-10-27 10:18:58
8340
发布2022-10-27 10:18:58
举报

作者:陌溪

陌溪的学习笔记:http://note.moguit.cn

大家好,我是 陌溪

今天,打开 Gitee 的时候,翻到博客系统类目,突然发现蘑菇博客竟然登顶了~

登顶了

虽然 5.1KStar 相比于其它的热门商城类开源项目来说不算什么。

但是作为博客这一个小类目来说,关注这个类目的目标群体也不会太多,所以能够一步步提升,最后成功登顶。还是挺让我开心的,在蘑菇博客中,也见证了我的一步步成长。

本期,就让我来一起聊一聊蘑菇博客成长史吧~

蘑菇博客诞生于 201898 日,也就是我在读研的第一天,在实验室里提交了蘑菇的第一行代码~

蘑菇博客的诞生日期

如果细心的小伙伴可能会发现,蘑菇博客的仓库名是 mogu_blog_v2。为啥会叫 v2

代码语言:javascript
复制
https://gitee.com/moxi159753/mogu_blog_v2

是因为早在开源的蘑菇博客之前,陌溪还写过一个蘑菇博客,我们就叫他 蘑菇V1

蘑菇V1

蘑菇博客V1诞生的背景:在 2017年,我去一家小公司实习的时候,用的是 SSM 框架,为了能够加深对使用框架的学习,所以就自己搭建了一套博客框架,采用的是 SpringSpringMVCMyBatis,同时前端框架使用的是 EasyUiFreeMark,全文检索使用的是 Solr

蘑菇博客V1

喏,下面就是 蘑菇V1 运行起来的样子,就是下面的样子:

蘑菇V1的界面

下面是 蘑菇V1 的后台管理页面,也是找了个花里胡哨的背景

蘑菇V1后台

但是,不得不吐槽一下,那会用 EasyUI 的做出来的后台样式实在不太好看

蘑菇V1后台

在读研期间,陌溪也是把压箱底的 蘑菇V1 拿了出来,整理了一波软件源码软件说明书申请书 等材料,用来申请了软件著作权,成功混了一波奖学金

软著申请材料

申请软著

由于,当时还怎么会使用 Git,并且也没有开源的意识,所以 蘑菇V1 就这样被封存起来了。

蘑菇V2诞生

2018 年的时候,SpringBootVue 已经慢慢火起来了,并且微服务架构也慢慢变得流行,那会迫切想要去了解和掌握这些技术,因此就想寻找切入点。

于是,蘑菇博客V2 就诞生了,因为之前给蘑菇博客的定位就是一个学习项目。因此,项目的技术选型都是当时比较新颖的技术,可能这些技术并不一定适用于博客系统。

Web 端使用 Vue + Element ,移动端使用 uniappColorUI。后端使用 Spring CloudSpring BootMybatis-Plus 进行开发,使用 JWTSpring Security 做登录验证和权限校验,使用 ElasticSearchSolr 作为全文检索服务,使用 Github Actions 完成博客的持续集成,使用 ELK 收集博客日志,文件支持上传七牛云和 Minio,支持 Docker Compose 脚本一键部署。

当然,给蘑菇博客用上这些微服务技术,也被不少人笑话,毕竟杀鸡焉用牛刀

不过我的定位也非常明确,就是给蘑菇堆料,把没有用过的技术在蘑菇中找到使用场景,并把它运用起来。如果这个技术不懂的话,那就去 B 站学习

所以在研一的时候,基本上没有课程的时候,就会打开 B 站,在里面快乐的学习,然后学完之后,在蘑菇上进行实践,每天乐此不疲~

那会学习了 SpringCloud 技术栈的时候,学习了 EurekaRibbonFeignConfig,但是准备学 Gateway 的时候,发现视频下架了!

后面也偷懒了,想着多一个服务,多占一份服务器资源,就没有继续看 Gateway 相关的内容了

因此,细心的小伙伴可能会发现,蘑菇早期的版本,是没有 mogu-gateway 服务的,前端是直接请求各自的资源服务。

就这样,不断的在学习、写蘑菇中度过了一年的时光,在 20191214 日的时候,蘑菇第一次成为了推荐项目,上了一次 Gitee 的推荐排行榜。因为在这一年的时光里,蘑菇博客页没怎么宣传,所以只有 55Star

上推荐了

Gitee 推荐霸榜的一段时间里,蘑菇的 Star 数也比之前一年的都多,一下就涨到了 300 多的 Star,那会看着 Star 数量在增加,还是挺开心的。

300star

当然,随着而来的烦恼也过来了,就是越来越多的小伙伴想要在自己的电脑上搭建蘑菇,但是那会蘑菇基本上没有啥文档,全靠自己摸索,所以在搭建的时候也遇到各种各样的坑。

为了帮忙小伙伴们能够顺利搭建起蘑菇环境,使用 docsify 搭建了蘑菇开源文档:陌溪在开源社区逛了几个月, 终于写下了蘑菇博客的开源文档

蘑菇文档:doc.moguit.cn

在蘑菇文档中,把 Windows 搭建,Linux 部署、Docker 部署都写了进去,文档写的比较详细,也受到不少小伙伴的支持~

蘑菇文档

就这样,2020728 日,蘑菇博客成功达到 1000 Star,也完成了之前给自己设定的小目标

1000star完成

收到了 Gitee 官方邮寄过来的奖杯~

收到奖杯

通过做开源学到了什么?

说实话,做开源项目其实是一件挺累的事情,因为有各种各样的小伙伴,可能会遇到不同的问题,然后都在群里 @ 你要求回复。虽然有很多问题都是在上面的文档中有讲到,我也很想回复一句:

看文档

但是,想着这个小伙伴可能真的没找到在哪里,所以我也会主动把文档的第几页贴给他,帮忙踩坑。

同时我也希望在遇到问题的时候,能够多看看官方文档,以及对应的 issue 搜索一下,掌握提问的智慧:为什么我向开源项目作者提问,他却不理我?

其实,在给别人解决问题,也是一个学习的过程,能够处理各种疑难杂症,并输出文档帮助后面的小伙伴顺利完成搭建。

早期的蘑菇搭建其实是特别复杂的,需要自己去安装各种环境:为了帮助小伙伴能够快速搭建,学习了 DockerDocker-Compose,并且最终实现了一条命令一键部署如何使用一条命令完成蘑菇博客的部署?

通过做开源项目,最主要的是可以认识到更多志同相合的小伙伴,一起给蘑菇添砖加瓦。蘑菇能一路走来,其实也离不开各位同学的贡献~

蘑菇开源贡献者

在做开源的过程,也是一个自我学习,因为能够自驱的让自己处于持续充电的状态,不断的学习和借鉴别人优秀的开源作品,来打磨自己的项目,和公司中的项目不同的是,自己做开源项目是没有 KPI 压力的,也没有人催着你的进度,完全是靠兴趣去学习的,所以你可能会做的很快乐。

有开源作品,一方面是可以提高自己的行业影响力,让自己在面试的时候能够更加突出。

例如:原来我在校招的时候,面试的字节跳动、滴滴出行、京东 等公司,基本上在 一面、二面、甚至在三面的时候,都对我的蘑菇博客项目感兴趣,然后在蘑菇上挖掘了比较多的知识点进行讲解,所以说在校期间有一个自己的开源项目,是挺加分的。

印象比较深刻的一件事,是在面试滴滴的时候,二面的面试官直接就打开:蘑菇博客 仓库,然后跟着蘑菇的架构图中的知识点来进行一顿提问。

蘑菇架构

面完之后,我们一起聊了一下做开源的事情,也对做这件事情表示了肯定,希望我能够不断坚持下去~

同时,我也会坚持把蘑菇中使用的技术,通过文章的形式输出出来,帮助更多的小伙伴来学习。

最后,我也希望现在在校的同学们,也能够动手做一个自己的开源项目。

好了,我是陌溪,我们下期再见。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-07-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 陌溪教你学编程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 蘑菇V1
  • 蘑菇V2诞生
  • 通过做开源学到了什么?
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档