Spring 2021报告发布:谁才是真正的一哥?

简介: Spring 2021报告发布:谁才是真正的一哥?

谁是 Spring 一哥?

今年排名前三的项目依旧保持不变。大约 75% 的受访者都在使用 Spring Data、Spring Security 和 Spring WebMVC。然而,这些并不是唯一被大量使用的 Spring 模块。大约三分之一的受访者在使用 Spring Kafka、Spring Batch、Spring Cloud、Spring WebFlux 和 Spring Integration,而 25% 的受访者使用 Spring Session、Spring LDAP、Spring AMQP 和 Spring Cloud Gateway。(稍后会详细介绍 Spring Cloud Gateway)

image.png

Data, data 无处不在

应用程序的好坏取决于它们的数据。复杂的应用程序可能会使用多个数据源甚至跨多个云。Spring Data 使使用数据访问技术、关系和非关系数据库、map-reduce 框架和基于云的数据服务变得容易——以及特定技术的子项目。

Spring Data JPA,可以轻松实现 Java Persistence 基于 API 的存储库在子项目列表中名列前茅,是 79% 的开发者的首选。Spring Data JDBC(Java 数据库连接),它定义了用于连接和查询几乎所有关系数据库的 API,以 74% 排名第二。非关系型数据库的几个模块也很受欢迎,包括 MongoDB (46%)、Redis (37%) 和 Elasticsearch (31%)。

image.png

Kotlin 取得新进展

Spring 支持三种编程语言:Java、Groovy、和 Kotlin,Kotlin 一种面向对象的语言,包括许多函数式编程的思想,于 2016 年首次引入。我们总是想了解什么是新技术更受欢迎,Kotlin 似乎是赢家。

超过 40% 的受访者已经在使用 Kotlin 创建 Spring 项目(18% 正在广泛使用它),以及额外的 18% 计划使用它。十分之九的人表示看好 Kotlin,在我们的调查所涵盖了15项新技术中,这是所有人中最积极的反馈。

image.png

API 是最重要的 Spring 功能

高达 97% 的人同意“API 对我们的 Spring 开发工作至关重要。” 为了了解有关 API 使用的更多信息,我们为内部消费者和外部消费者拆分了 API。这些是今年排名第一和第三的用例。商业应用程序跌至第二位。

由于内部 API 已成为如此重要的用例,了解人们正在使用哪些内部 API 市场以及他们如何发现和试用 API 将会很有趣。明年寻找有关这些主题的问题。Spring Cloud Gateway 提供了一种对开发人员友好的方式来路由、保护和监控 API 请求。对这个开源项目的兴趣正在飙升,同时对我们的商业支持版本 Tanzu Spring Cloud Gateway 的兴趣也在飙升。

超 80% 的人正在使用现代应用架构

Spring 的好处之一是它可以帮助开发人员跟上现代技术的步伐,因此他们不必不断的学习新的语言或框架;86% 的人使用 Spring 的现代架构风格——几乎每个人 (94%) 都使用微服务,而 35% 使用 Reactive,19% 使用 serverless.。

Spring Native

当我们询问 Spring 有哪些地方可以改进时,有两项倍受关注:减少启动时间和优化内存使用。通过将 Spring 应用程序编译为原生可执行文件,Spring Native 解决了这些挑战——而且它已经准备好起飞。

为什么犹豫?

采用 Spring Native 的最大障碍是:仍处于测试阶段 (59%) 和 GraalVM 原生映像技术需要成熟 (46%)。92% 的利益相关者对 GraalVM 持积极态度,这一事实表明社区相信该技术将迅速成熟。

image.png

前途一片光明

Spring Native 于 2021 年 3 月进入公测阶段。尽管 Spring Native 仍处于测试阶段,但 65% 已经计划部署它:29% 在未来 12 个月内,另外 29% 在 1-2 年时间范围内,还有 7% 计划 5 年内。

image.png

Spring 正在 K8s 上起飞

在 Kubernetes 上运行容器化 Spring 应用程序的组织数量从去年的 44% 飙升至 57%。这 13 点跃升与整个行业对 Kubernetes 使用增长保持一致。

十分之九的受访者希望看到对 Kubernetes 更好的支持,包括 Kubernetes 原生服务发现和配置管理 (67%)、简化的 Spring Boot 应用程序容器 image 流水线(57%) 和 Spring 应用程序的应用程序管理 (52%)。

总结

2021 年是 Spring 继续蓬勃发展的一年,61% 接受调查的组织表示 Spring 是他们的主要或唯一开发平台,高于去年 52%。惊人的达到 95% 的人赞同 Spring Boot 对生产力有巨大的积极影响,90% 的人表示 Spring 的影响比其他 Java 平台更大。Stack Overflow 和 Spring.io 再次成为 Spring 社区的主要信息来源。我们将全年工作于 Spring.io,以解决社区对网站可用性和内容可发现性的反馈。

Spring 释放的巨大生产力的关键是许多有助于加速代码交付的 Spring 项目。例如:近 80% 的组织使用 Spring Data——它与 MongoDB、Redis 和 Elasticsearch 在内的领先数据技术集成。如果你正在寻找合适的 Spring 项目来加速你的开发工作,那么了解你的同行根据项目成熟度和文档质量做出决策可能会有所帮助。在使用现代架构的 86% 的受访者中,94% 使用微服务,35% 使用 Reactive,19% 使用 Serverless。

绝大多数 (97%) 的调查受访者表示 API 对他们的开发工作至关重要。虽然 JSON over HTTP 和 OpenAPI 占主导地位,令人惊讶的是已经有 20% 在使用带有 GraphQL 的 API。如果你的组织看到 API 快速增长,请查看 Spring Cloud Gateway 和 API Portal 以帮助简化 API 管理。Spring 社区中的每个人似乎都知道 Spring Native。因为它仍处于测试阶段,很少有人使用它,但 Spring Native 处于有利地位,可以在不久的将来快速使用。

凭借其庞大的生态系统和良好的业绩记录,Spring 仍然是 企业 Java 的首选平台,未来还有更多。这项年度调查是宝贵的资源,因为我们与 Spring 社区合作,优先考虑新的创新领域并确定和解决问题。感谢你花时间阅读本报告。如果你也参与了调查,感谢你的反馈!

最后,如果你正在学习Spring,那么我们的Spring Boot和Spring Cloud教程,一定可以帮助你:Spring Boot系列Spring Cloud系列

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
XML 消息中间件 Java
Spring Boot 3.0发布,最低支持Java 17,新特性介绍
Spring Boot 3.0正式发布,距离Spring 2.0发布过去了4年半时间。最低支持Java 17,Spring Framework 6.0.本文详细介绍Spring Boot 3.0 新特性。
5914 12
Spring Boot 3.0发布,最低支持Java 17,新特性介绍
|
Java 程序员 API
Spring Boot 3.0.0正式发布,Banner不再支持图片&增强可观测性
技术向前的大船,浩浩荡荡不可逆。作为技术人,我们能做的是keep moving,不管是技术架构师还是业务架构师,还是开发工程师!
571 0
Spring Boot 3.0.0正式发布,Banner不再支持图片&增强可观测性
|
存储 网络协议 Java
【方向盘】Spring Boot 2.7.0正式发布,弃用OkHttp 3、弃用spring.factories机制
Spring Boot 2.7.0、2.6.8、25.14发布,2.5.x停止OSS支持。
1603 0
【方向盘】Spring Boot 2.7.0正式发布,弃用OkHttp 3、弃用spring.factories机制
|
XML JSON Cloud Native
Spring Framework 6正式发布,携JDK 17&Jakarta EE开启新篇章
在云原生发展势头下,Spring被冠以太重的标签,被新兴框架`Quarkus`等嘲笑“廉颇老矣”。可亲是否可知,最初Spring就是以轻量级出圈(interface 21就是佐证),横扫Java EE。
786 0
Spring Framework 6正式发布,携JDK 17&Jakarta EE开启新篇章
Spring Boot 最新发布,看完我彻底傻眼了!没几个 能打的了
来源: https://mp.weixin.qq.com/s/Ljwg7z3zwS1WjXicVlSkXA 作者:Java技术栈 距离 Spring Boot 2.6.3 发布一个月左右,Spring Boot 2.6.4 又来了!
|
消息中间件 Cloud Native 容灾
Spring Cloud Alibaba 2.2.8 版本发布与社区未来规划介绍
本次发布的 Spring Cloud Alibaba 2.2.8 版本是基于项目 2.2.x 分支构建发布的,是在 Spring Cloud Hoxton.SR12、Spring Cloud 2.3.12.RELEASE 的基础上对其中包括注册配置中心、分布式消息等在内的众多组件进行了升级,属于一个组件升级与 Bug 修改的版本。
Spring Cloud Alibaba 2.2.8 版本发布与社区未来规划介绍
|
安全 小程序 Java
Spring Boot 最新发布,支持 Java 19,这速度太快了。。
Spring Boot 最新发布,支持 Java 19,这速度太快了。。
782 0
Spring Boot 最新发布,支持 Java 19,这速度太快了。。
|
运维 负载均衡 监控
Spring Cloud 微服务优雅下线 + 灰度发布的正确姿势,写得太好了!
在生产环境中,如何保证在服务升级的时候,不影响用户的体验,这个是一个非常重要的问题。如果在我们升级服务的时候,会造成一段时间内的服务不可用,这就是不够优雅的。那什么是优雅的呢?主要就是指在服务升级的时候,不中断整个服务,让用户无感知,进而不会影响用户的体验,这就是优雅的。
965 0
Spring Cloud 微服务优雅下线 + 灰度发布的正确姿势,写得太好了!
|
缓存 小程序 Java
重磅!Spring Boot 2.7 正式发布,一大波新特性,看完我彻底躺平了。。
重磅!Spring Boot 2.7 正式发布,一大波新特性,看完我彻底躺平了。。
1675 0
重磅!Spring Boot 2.7 正式发布,一大波新特性,看完我彻底躺平了。。