GitHub的Octoverse表示 ,尽管Java不是开发人员首选的云原生运行时,但它仍然是企业开发人员中普遍使用的开发语言,并且落后于其他语言。
因此,云原生Java应该是什么样子,以使人们能够在不费力的学习曲线下在不可变的基础架构中进行开发,构建,运行,调试和部署? 开发人员如何轻松地按需为无服务器应用程序开发云原生Java?
新的云原生Java运行时需要为开发人员构建云原生,微服务和无服务器Java应用程序提供以下四个主要好处:
- 提高开发效率:开发人员需要零配置,实时编码和易于注入的扩展来实现云原生应用程序。
- 启用响应式编程:开发人员必须能够使用EventBus或Vert.x来实现响应式应用程序以及传统的命令式应用程序。
- 优化无服务器:当云原生Java运行时提供超快速的启动时间和非常小的内存占用时,开发人员会将现有的微服务演进为无服务器应用程序。
- 采用通用的开源项目和工具:开发人员需要与标准的开源项目和工具集成,例如Kubernetes,Vert.x,RESTEasy,Kafka,Jaeger,Prometheus,Infinispan等。
牢记这些标准,Java的云原生体系结构注意事项很明确。 我们需要设计在规模和速度上在DevOps和云原生平台上运行容器化应用程序。 这将使开发人员能够在不可变的基础架构(如Kubernetes)上基于高性能缓存,事件驱动/响应式和无服务器等架构构建基于云的Java应用程序,并具有所有预期的好处。 结果将使开发人员能够在一个非常新的环境中使用Java的功能和历史。