服务器

Kotlin for server - server Frameworks News: Kotlin Premier Event Presentation highlight

Kotlin在线活动结束了。但我们认为我们应该简要回顾一下两个服务器端对话:什么是新的Ktor 2.0和Kotlin一起的Spring Native.在这些演讲中,Hadi Hariri和Sébastien Deleuze带我们深入探讨了框架的多平台能力。

什么是新的Ktor 2.0

这次演讲涵盖了Ktor 2.0中一些令人兴奋的新东西。Ktor 2.0目前处于测试阶段,但它已经包含了一些特性,这些特性应该有助于简化开发,并为即将到来的许多新事物奠定基础。

所以,Ktor 2.0有什么新功能?它可能会毫不奇怪Ktor 2.0带来适当的包装名称和可发现模块。要使新版本更轻松地升级,该团队已发布ktor 1.6至ktor 2.0.0迁移向导.此外,我们将自动化迁移过程,以确保更新是平稳的体验。

结构搜索和更换提供一种强大的方法来搜索特定的代码模式并将其替换为其他代码模式。

Ktor的服务器端

Ktor被设计成一个多平台框架支持服务器(JVM)和客户端(JVM、Native、JS), Ktor 2.0通过将Native支持引入服务器扩展了它的能力。

功能现在是插件.在Ktor中,任何过去被称为特性的东西现在都被称为插件。你可以使用各种插件(包括第三方插件)来创建你想要的功能。

我们已经简化的API,它不再包含任何不必要的细节-只是onCallonCallReceive,Oncall响应.请分享您对此的任何反馈,以便我们可以继续提高API。

Ktor为客户

API现在更简单,更容易发现.泛型消失了,正文现在包含了类型,这使得它更容易使用。

重试要求很高,所以现在是捆绑销售。在Ktor 2.0中,您可以判断重试是特定类型的还是针对特定异常的,并且可以实现特定的延迟,而不必使用任何指数衰减函数。

此外,客户端的Ktor现在也随附内容协商你可以和服务器进行内容协商,特别是在微服务中。

文件

我们没有忘记文件.它已被重写,并填补了所有以前的差距。每一个样本都是最新的,可供下载!

生成器和IDE支持

一个新的发电机start.ktor.io这只包含两个简单的步骤:选择名称和附加设置,以及选择插件(过去称为特性),包括第三方插件。

而这仅仅是个开始

和Kotlin一起的Spring Native

SébastienDeleuze共享全面概述了允许春季引导本机本机获取的新的概要转换,并提高本土兼容性,并且他也宣布了其他一些新功能。

什么是春天本地人?

春天本地提供对使用GRAALVM的本机可执行文件进行编译Spring引导应用程序的Beta支持,提供了一种部署Spring引导应用程序的新方法,该应用程序允许它们有效地运行。

Kotlin / JVM / Native

KOTLIN / JVM目标和使用GRAALVM编译字节码的讨论自然地引导我们Kotlin / JVM / Native.它提供了完美的配合因为它允许您在留在JVM生态系统中进行本地,因为Spring和Kotlin编译器插件基础架构具有良好的本机。

未来的芬兰湾的科特林采用

下一波Kotlin市场份额增加了可能不是来自更好的语言方面,而是来自对K2编译器和即将到来的新编译器前端、第三方编译器插件、Compose for Web和Kotlin/Wasm的投资。

未来(AOT)转型

Spring AOT Maven和Gradle插件在Spring Boot应用程序上执行强大的构建时转换,以提高Native上的效率,并可能提高JVM上的效率。春天的AOT战略包括将Spring Fu效率带到Spring Boot应用程序。在这个主题上,值得注意的是,对于JVM来说,可以为本机而是可选的AOT模式。

艰巨性能数据

在JVM上,构建时间几乎是即时的.原生版本仍然需要一些时间,但它将在即将到来的原生版本0.11中减少。

Native已经使容器映像的大小比JVM中的小得多,并且随着即将到来的UPX压缩,它们将大约是现在的一半大。

AOT为JVM带来了10%的内存足迹改进。本机的足迹已经显着降低,但随着0.11,内存占用空间将减少甚至更大 - 与0.10相比高达20%。

在Native上启动几乎是即时的(最多需要80毫秒),而在Native 0.11上这一时间会减半

路线图

Spring Native 0.11.0 with

  • AOT应用上下文
  • 带有反射优化的GraalVM 21.3
  • 支持Java 11和Java 17
  • 春靴2.6.0
  • 容器图像的UPX压缩

Spring Native的未来是Spring Boot 3.x中一流的本机支持。这将通过在Spring中进行更重大的更改来实现更好的兼容性和占用空间。

春天正在建立未来十年的框架

发现更多的

Baidu