Java如何面对无服务器的挑战?

Spring推动者Pivotal有一个名为 Riff的函数即服务平台,它是一个开源的、Apache 2许可的、函数即服务平台,基于Kubernetes和刚刚宣布的KNative技术。

还有Spring Cloud Function,它能让你编写与任何一个函数即服务且与平台无关的代码,并使用适配器进行部署。Spring是以其注释和POJO为中心的组件模型,意味着编写函数就像在Java中一样简洁。它可以像一个类一样简单,一个方法返回一个`java.util.Function `实例。或者甚至只是一个实现`java.util.Function `的类。

当然,这样的应用程序与Node.js相比有更多代码行,并且启动速度稍慢,它比同等的Go应用程序慢得多,但不是影响成为无服务器平台的关键原因,无服务器是关于提高组织敏捷性; 比如我能以多快的速度发送电子邮件、调整图像大小或运行报告以及响应触发事件的作业?有了像Project Riff这样的平台,获得结果会非常快!无服务器已经在重塑Java。

无服务器要求代码按需立即启动(冷启动),因此 启动时间非常重要,JVM的JIT编译器针对长时间运行的系统进行了优化 ,随着时间的推移,JIT将越来越多的代码编译为机器语言并引入 其他优化。

随着更多内存增加成本,无服务器的内存消耗更为重要,Java的一些垃圾收集算法消耗了大量内存。这些问题是如此根本,以至于无法解决。但是,GraalVM会提前编译代码,以加工代码并显着缩短启动时间,因此,Java将来似乎更适合无服务器!

为了在无服务器领域竞争,Java将不得不改善其启动时间和占用空间。该领域正在开展工作,但在与其他语言的足迹和启动时间竞争时还有很长的路要走。


读者福利:

分享免费学习资料

针对于还会准备免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)

为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀,而你是不是还在满足于现状内心在窃喜!希望读到这的您能点个小赞和关注下我,以后还会更新技术干货,谢谢您的支持!

资料领取方式:加入Java技术交流群  963944895 ,私信管理员即可免费领取

你可能感兴趣的:(Java如何面对无服务器的挑战?)