前言
平时很喜欢研究知名开源项目的源码,觉得能和大师学到不少东西,并且也尝试过给知名开源项目提交PR,贡献自己的代码,但大部分开源项目并没有想象的那么活跃,commiter的review过程太漫长,不能及时给到我反馈。因此我萌生了打造自己的开源项目的想法,目前有如下想法,欢迎探讨!
想法一:
平时开发过程中,最难的最麻烦的就是各种性能调优,如果有一款智能的调优诊断分析器,能够实时监控应用,并诊断分析,发现有优化的地方,发消息通知,并给出优化建议,若授权便可自适应调优。
各种组件调优,包括:
JVM参数调优
MySql调优
线程池参数调优
数据库连接池调优
ES参数调优
redis参数调优
kafka参数调优
...
思路:
实时监控采集数据,借鉴skywalking等agent探针技术,实现应用无侵入的指标采集,
然后经过一系列的AI算法,模拟程序员的调优经验和思路,输出优化建议。
想法二:
代码优化智能诊断器,随着项目业务越来越复杂,代码逻辑难免堆成shit山,难以扩展和维护,容易出现bug,因此想开发一个代码优化智能诊断器。
1.线程安全隐患诊断
2.DDD领域驱动设计重构建议
2.设计模式优化
3.依赖耦合诊断
4.强弱依赖优化
5...
思路:待补充
想法三:
缓存相关:
方向一:比Guava Cache、Ehcache更加好用的本地缓存组件;
方向二:性能堪比或者接近redis的持久化KV键值数据库,降低成本
思路:待补充
想法四
Java版的ChaosBlade混沌工程平台,即故障注入、故障演练工具。
多说一句
我眼中的未来软件开发的最终理想形态:
程序员只需关注业务逻辑代码的开发,其余的一切都不需要关心,都交给云平台来做。
现在的servich mesh,serverless技术都是向这个目标靠拢。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。