当前位置: 首页 > 工具软件 > Spring-Rails > 使用案例 >

This Decade in Spring - Happy New Year Edition - December 31, 2019

程淮晨
2023-12-01

Engineering
Josh Long
December 31, 2019

Hi, Spring fans, and HAPPY NEW YEAR! Welcome to another, extra-special installment of This Week in Spring. Normally, when writing the first post after or before the new year, I chronicle the most important moments in the last year. This year, seeing as we’re about to tip the scales and embark upon not just a new year but a new decade, I’m going to do my level headed best to distill the biggest and the best for the Spring ecosystem in the last decade. The problem I face in writing this isn’t in coming up with things to mention, it’s in limiting the number of things I mention!

Where does one even start? It’s hard to believe we’ve come this far, as a community. Remember, the earliest pages of code in Spring date back to 2001, almost 19 years ago. Rod Johnson, the original creator of Spring, talked about Spring’s progression over the last almost two decades in this blog post - 18 Years of Spring.
This Decade in Spring

Now, where do we begin?

Spring Boot - this one is pretty easy! Spring Boot is changing the world. When we on the Spring team announced the .4 release of Spring Boot back in 2013, none of us could have guessed how far it would go. It was an opinionated approach on Spring and the Java ecosystem it supports that embraces some of the best patterns from convention-over-configuration frameworks like Rails, Grails, Spring Roo and others while also not sacrificing flexibility. Spring Boot is now - by far - the most widely used JVM library in the JVM ecosystem save for Java itself. All the major-scale online services use it. It’s been forged in the fires of production and the work, of late, has seen it go from being the most productive, powerful framework to being among the most performant frameworks. Who knows what the next decade will offer for the Spring developer, but I’ll bet it builds upon Spring Boot.
Spring Cloud - if Spring Boot is an opinionated approach to building applications, Spring Cloud - which builds on Spring Boot - is an opinionated approach at building applications (microservices!) that are destined for the cloud. The cloud, for modern applications, is production. Spring Cloud leverages the same Spring Boot autoconfiguration and supports an opinionated approach to building applications.
Java 8 - Java 8 came out in 2014 and revitalized the JVM. If it wasn’t clear with Spring Boot that Java was the ecosystem to bet on, this release cinched it. It showed that there was life yet in this workhorse ecosystem and introduced tons of new language and runtime features. Suddenly, Java syntax looked a lot more like some of its more contemporary siblings. It’s hard to underestimate how important Java 8 and deliver-new-features mindset the Java team has since embraced is to our ecosystem.
The Death of the Application Server - While Spring Boot wasn’t the first to support alternative deployment models for JVM-based applications, it was the first to popularize it. It made clear that the application server, such as we knew them, were no longer relevant. Sure, you can run a Spring Boot application in an application server, but…. why? You gained nothing and sacrificed, clearly sacrificed, a considerable amount to do so. Now, keep in mind, Pivotal/VMware are, and have been, one of the major investors into Apache Tomcat, the most prolific application server, so the death of the application server was a self-inflicted wound. We’re just fine with that. You can use Apache Tomcat, as a library, in Spring Boot, and millions already do. It’s just that you don’t have to. The HTTP server isn’t the same as your runtime, and that’s as it should be.
Cloud Native Applications - Spring Boot assumed the runtime responsibilities of the application server, where the cloud stepped in to deliver the platform-centric responsibilities that the application server never could. These two things - smart applications powered by Spring Boot and smart platforms like Cloud Foundry and Kubernetes - have ushered in a new era of Cloud Native Java applications, a topic I love so much I wrote a book on it!

This Week in Spring

Alright my friends, we’ve come a long way so let’s get to it!

Pivotal is now officially part of VMware!
Microsoft’s Jialin Dai on the various Spring for Azure Starters
Getting Started with Spring Cloud DataFlow and Confluent Cloud
Baeldung has a nice post on one of the other most important things to come out of the last decade for the average Spring developer: color ASCII art banners!
This Practical Guide looks at using Spring Boot and Spring Cloud for microservices.
Applying CI/CD to Java Apps Using Spring Boot - DZone Java
Check out the talk that Google’s James Ward, Okta’s Matt Raible and I gave at SpringOne Platform 2019: From Idea to Dev to Ops
This is a nice post on using Reislience4J and Spring Cloud CircuitBreaker
I love this post introducing the Flow concept in Kotlin
Did you see the amazing Christmas-themed Spring Initializr? :D
There are a ton of new features in Java 14 and you should check them out

And, finally, my friends, it’s the end of the year. It’s new years day already in some parts of the world as I post this. I want to remind those of you who haven’t crossed the date line to not drinkn and code and not drink and drive. It’s dangerous out there. Stay safe, get a car home from tonight’s festivities if there’s even a moment of doubt. And, of course, to every one, everywhere, HAPPY NEW YEAR!
comments powered by Disqus

translate:
翻译:

嗨,春季粉丝们,新年快乐!欢迎来到春季本周的另一部特别专辑。通常,在新年之后或之前写第一篇文章时,我会记下去年最重要的时刻。今年,鉴于我们即将扩大规模,不仅踏上了新的一年,而且踏上了新的十年,我将竭尽全力为过去的春季生态系统提炼出最大和最好的水平十年。我在撰写本文时面临的问题不是提出要提及的问题,而是要限制我提及的事物的数量!

一个人从哪里开始?很难相信我们作为一个社区已经走了这么远。请记住,Spring中最早的代码页可以追溯到19年前的2001年。 Spring的原始作者Rod Johnson在这篇博客文章-Springs of 18 Years中谈到了在过去近20年中Spring的发展。
春天的这个十年

现在,我们从哪里开始?

Spring Boot-这很简单! Spring Boot正在改变世界。当我们的Spring团队于2013年宣布Spring Boot的.4版本时,我们谁也无法猜测它会走多远。在Spring及其支持的Java生态系统上,这是一种自以为是的方法,它包含了一些Rails,Grails,Spring Roo等基于配置约定的框架的最佳模式,同时也没有牺牲灵活性。到目前为止,Spring Boot是JVM生态系统中使用最广泛的JVM库,但Java本身除外。所有大型在线服务都使用它。它是在生产的大火中锻造而成的,最近,它已经从最高效,最强大的框架变成了性能最高的框架。谁知道未来十年将为Spring开发人员提供什么,但我敢打赌,它将基于Spring Boot。
如果使用Spring Boot是构建应用程序的自决方法,则Spring Cloud是基于Spring Boot构建的Spring Cloud,它是构建用于云的应用程序(微服务!)的自觉方法。对于现代应用程序来说,云就是生产。 Spring Cloud利用相同的Spring Boot自动配置并支持构建应用程序的有效方法。
Java 8-Java 8于2014年问世,复兴了JVM。如果使用Spring Boot尚不清楚Java是值得信赖的生态系统,那么此发行版将其束之高阁。它表明在这个强大的生态系统中还存在着生命,并引入了许多新的语言和运行时功能。突然,Java语法看起来更像是它的一些更现代的兄弟。很难低估Java 8团队自那时以来所接受的Java 8和提供新功能思维对于我们的生态系统的重要性。
Application Server的消亡-虽然Spring Boot并不是第一个支持基于JVM的应用程序的替代部署模型的人,但它是第一个普及它的人。很明显,我们所知道的应用服务器不再相关。当然,您可以在应用程序服务器中运行Spring Boot应用程序,但是…。为什么?您一无所获,并且为此付出了牺牲,显然是牺牲了。现在,请记住,Pivotal / VMware曾经是,而且一直是Apache Tomcat(最多产的应用程序服务器)的主要投资方之一,因此应用程序服务器的死亡是一个自残的伤口。我们就可以了。您可以在Spring Boot中将Apache Tomcat用作库,并且已经有成千上万的人这样做了。只是您不必这样做。 HTTP服务器与您的运行时不同,应该是这样。
云原生应用程序-Spring Boot承担了应用程序服务器的运行时职责,云介入其中以交付应用程序服务器永远无法承担的以平台为中心的职责。这两件事-由Spring Boot支持的智能应用程序以及Cloud Foundry和Kubernetes等智能平台-迎来了Cloud Native Java应用程序的新时代,我非常喜欢这个话题,我为此写了书!
 类似资料:

相关阅读

相关文章

相关问答