Martian,一个 JavaWeb 开发框架,自 2019 年开始写下第一行代码,至今已有 2 年 1 个月,在各种 小框架的 围攻竞争下,艰难的生存着。 因为定位是一个 极简的框架,这跟很多框架产生了冲突,尤其是刚刚问世的时候,经常收到 一些吐槽,例如:没有新意。
但这并不影响我对这件事的热爱,我一直都在不断地做着维护,从一开始的一个微型项目,渐渐的发展成今天这样,期间集成过 netty,tomcat,httpServer,但最终都因为 跟我一直坚持的 最小化原则 相违背 而放弃了。 最终选择了基于 NIO 自己实现 http 服务。
后来,因为 NIO 是 同步的,为了使其不被业务阻塞,故而加入了线程池,但是效果不是很理想。经过了再三的考虑,最终选择了 AIO 。也就是今天发布的这个版本。
升级为 AIO,只是内部变更,增加了一定的吞吐量,从使用者的角度来看,并没什么改变,所以不会产生什么负面影响
最低支持 JDK11,这是一个很艰难的决定,因为可能会丢失一批潜在用户,甚至是正在使用的用户,但是我觉得,作为一名开发者 需要对新东西保持一定的敏感度,JDK8 早晚会不堪重负,被淘汰是必然的趋势,所以我们作为业内人士 需要起到一定的带头作用(虽然我的影响力几乎为 0,O(∩_∩)O 哈哈~)。
那如果就是想在 JDK8 上运行怎么办? 可以下载源码,在本地自行编译,不使用中央库的 jar 包即可。 但是这么做也会存在另一个问题,就是随着版本的升级,源码里面肯定会用到 JDK11 的特性,到那个时候,将彻底不再支持 JDK11 以下的环境。 所以这招 在以后发行的版本的源码里 不一定行得通。
目前完美支持 JDK8 的版本是 3.2.18 ,是 NIO 版本。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.