2017年,Java服务器端的前景出现了一个认知问题。随着向微服务和轻量级(通常是容器化的运行时)的转变,开发人员开始注意到传统Java应用程序的相对膨胀,这些应用程序被打包并部署到servlet容器上的共享Java虚拟机(JVM)中。无服务器的出现进一步加速了这种认知。
就在这个时候,一个团队Object Computing开始重新思考Java框架是如何从头开始设计的。结果是Micronaut框架是一个Java框架,它采用了一种完全不同的方法,将框架如何连接的计算转移到带有Java注释的编译阶段。这完全消除了传统Java框架中存在的对反射、运行时生成的代理和复杂的动态类加载的需求。
什么是Micronaut框架?
(资料图)
Micronaut框架提供了一个极度模块化的架构适用于各种应用类型!在其基础上,Micronaut框架实现了JSR-330依赖注入规格。该框架在顶部提供了许多额外的内置特性,这些特性使其成为由基于注释的编程模型支持的通用框架的绝佳选择,这些特性包括:
l 配置注入
l 面向方面的编程概念,如拦截器
l 对许多基本的云本机应用程序概念的内置支持,如验证、缓存、弹性重试、作业调度等。
Micronaut有一个HTTP服务器和HTTP客户端基于Netty I/O工具包构建。在java培训中,有理论课程和实战项目一起训练学习,提高实战能力,备受企业青睐,以便快速上岗实操。
用户已经采用Micronaut框架来构建无服务器应用程序, 命令行应用程序,以及甚至JavaFX应用程序。
Micronaut框架坚实的核心基础为一个广泛的模块生态系统提供了基础,允许Micronaut解决一系列问题。这种灵活性是Micronaut框架在开发人员中迅速流行的原因。
为什么应该使用Micronaut框架?
Micronaut框架的目标是通过完全消除这些框架中使用Java反射、动态类加载、代理和字节码的运行时生成等特性的动态部分,为传统Java框架提供一个轻量级的替代方案。
消除传统框架的这些方面对提高性能、内存消耗、安全性、健壮性、调试和测试的容易性有着深远的影响。与其他解决方案不同,Micronaut框架应用程序也可以在JVM中快速启动!
启动时间的改进通常完全消除了在集成和单元测试之间分割代码的需要,极大地改进了代码到测试的周期时间。在过去,我们经常编写较少的集成测试,因为应用程序启动太慢。Micronaut框架消除了这种顾虑,因此不包含针对HTTP层的大量模仿工具。许多框架这样做是为了避免启动应用程序的成本。
消除反射还有助于减少堆栈跟踪的大小,这在传统框架中通常是巨大的。
Micronaut框架还提供了将你自己的代码转换为构建时方法的机制和API。这就是为什么通过直接与Java编译器集成,Micronaut框架能够并且确实在注释使用不当时产生编译错误,从而提高代码的类型安全性和整体开发人员体验。
总结
Micronaut框架为服务器端Java工作负载带来了一股新鲜空气。它提供了一种创新的编译时方法和特性集,使其成为构建现代云原生Java应用程序的绝佳候选。
围绕Micronaut框架出现了一个充满活力的社区,实现了许多提高开发人员生产力的模块,包括Micronaut数据,它包括与数据库技术的关键集成。