2 年了,一个开源项目 从最初的想法一点点迭代,到现在有了一点点用户, 从一开始的一个项目,变成了现在拥有微服务组件和网关组件的 微型生态,一路上,真是历经苦难。有质疑,有鼓励,有嘲讽。
有时候我真的在想,要不要就此打住,放弃维护算了,项目就挂在那,喜欢的就看一看,学一学姜太公,愿者上钩,我也落个轻松,但是总感觉有点可惜吧,毕竟是花了大量心血做的。
说起为什么要做这个项目,我或许已经记不清了,我只记得一开始并没有打算做这个东西,我只是想验证一下我对 springboot 的原理理解的对不对,于是我就尝试着自己去实现一个类似的框架。当我实现了基础功能后,我居然舍不得删除这份代码,所以就放到了 github 上托管, 那个时候也完全没有开源的想法,就是把 github 当成一个存放代码的网盘了。 没有开源协议,没有 readme,连代码结构也是一团糟。
这份代码就这样保存了下来,但是我每次闲下来都会不由自主的在脑海里盘算着,哪里写的不够好,哪里可以再优化一下,目录结构是否可以更优雅一点,细节是否可以再打磨一下等, 每次想到一些东西,就会去维护一下,然后乐在其中, 正是因为这样的维护,让这份代码变得越来越健壮,于是就有了分享给大家看看的想法。所以我做起了官网,开始在一些技术群里分享,但是得到的反馈却不太友好,几乎是清一色的嘲讽,质疑。大部分的嘲讽都集中在 [没新意,个人项目太垃圾等] ,每次面对这些嘲讽,我都在想,怎样才能让大家接受且愿意尝试下,而不是看了个文章介绍,就立刻否定了,所以我拼命的去优化我的代码,去加入一些新特性(或许不是新特性,因为每一个特性,都能在世界上找到包含此特性的项目)
就这样,
可以说完成了一次 集小成,一个项目就可以提供 中小型项目开发中常用的一些功能点。但是反应还是一般般,无人问津,没有人在意这是一个什么东西,每次的分享,都是一次被喷大会。不过其中也不乏一些理智的人,他们会理智的说出一些自己的看法,这给了我很大的帮助,我也非常感谢他们。
事情到了这一步,我也可以说是骑虎难下了,投入了这么多,总不能放弃吧,我只有硬着头皮往前走,我不断的去思考,到底是什么原因让大家不愿意尝试呢? 可能 [个人项目] 这个标签,本身就是原罪吧,也可能是我提供的生态不够,所以我做出了如下计划:
所以,tomcat 没了,直接采用了 HttpServer (在 JDK8-JDK14 上都测试过,都没问题), 不需要注册中心的微服务组件也开始投入了开发,网关也提上了日程,同时官网和文档日渐完善,我甚至找专业的人设计了 logo (我自己觉得挺好看的)
经历了 2 年的时间,这些都已经成为了现实,有了微服务组件,有了网关组件,有了自己的 logo,官网也比以前好看了很多,文档也比以前清爽简洁。
与此同时,也出现了另一个问题,项目的高度集成化,使得扩展性不够,比如 HttpServer 不好的时候,可否切换到 tomcat ? 微服务的熔断器,负载均衡 是否可以 插拔,甚至让用户自己开发? 用户是否可以自己开发组件?所以,接下来的一段时间,我开始了这个方向的优化, 到现在为止,都已经实现了,但是还存在一些问题:
接下来的工作重点,我会放在优化这几个点上。 至于更加长远的计划,那肯定是无限的向企业级开发靠拢,争取让他可以胜任大型项目。
2 年来,不断地优化,试错,面的各种嘲讽,早已成为习惯,总之我知道自己在干嘛就好了,即使无人问津也没关系,起码我可以从这件事中 学到一些东西,体会到一些东西,这也是一种价值吧,就像回归初心一般,我一开始仅仅只是为了验证我对 springboot 的原理理解的对不对,我只是乐在其中,其他的一切杂念,就让它烟消云散吧。
哦对了,这个项目叫 Martian http://mars-framework.com
1
JingYM 2020-12-04 12:46:24 +08:00
加油,我也有个自己做个这样项目的梦想。
|
2
monkeyk 2020-12-04 12:57:40 +08:00
重点是找到 开源项目的 核心价值;
|
3
EKkoGG 2020-12-04 14:32:31 +08:00
厉害的 加油!
|
4
nickchenyx 2020-12-04 14:51:18 +08:00
官网做的看起来很正式了,这个传染机制注册,有个问题,如何实现统一的服务实例的治理呢——比如主动下线某个节点的(不是直接宕机那种)
|
5
yupozhang 2020-12-04 15:01:55 +08:00
加油呀。
我也有一个开源项目在维护 Spug 一个轻量自动化运维平台 特性:开源免费,简单好用,不需要安装 Agent,功能包含主机管理、主机批量执行、主机在线终端、文件在线上传下载、应用发布部署、在线任务计划、配置中心、进程端口站点监控、微信钉钉邮件报警等一系列功能。 开源链接: https://github.com/openspug/spug |
6
Joker123456789 OP |
7
37Y37 2020-12-04 15:14:55 +08:00
加油大佬
|
8
dream4ever 2020-12-04 15:33:04 +08:00
官网首页不考虑放上个人 GitHub 账号链接嘛,感觉 GitHub 账号已经是 coder 通用的名片了。
|
9
Joker123456789 OP @dream4ever 有连接啊,在 banner 上,有两个按钮,第一个就是。
|
10
dream4ever 2020-12-04 15:55:15 +08:00
@Joker123456789 我没表达清楚,我的意思是页面底部有你的各种社交媒体账号,但是没有你的 GitHub 账号的链接~
|