这是来自jaxcenter组织的一个讨论,谈论了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服务器没回应_Java如何面对无服务器的挑战?相关推荐

  1. JAVA服务器没回应_Java Socket为什么服务器无法回复客户端

    Java Socket为什么服务器无法回复客户端 我想写代码让客户端发送一个字符串给Server,Server打印字符串并回复一个字符串,然后Client打印字符串Server reply. 我的服务 ...

  2. 构建静态服务器_为静态网站构建无服务器联系表

    构建静态服务器 介绍 (Introduction) A few years ago AWS launched static hosting service S3, which was a paradi ...

  3. 如何做到服务器虚拟化_尽可能地做到无服务器,但不止于此

    如何做到服务器虚拟化 毫无疑问,如果您一直关注技术趋势,那么您会看到"无服务器"的兴起. 在某些情况下,"无服务器"被称为"下一个应用程序体系结构&q ...

  4. 无服务器架构_如何开始使用无服务器架构

    无服务器架构 Traditionally, when you wanted to build a web app or API, you'd usually have to spend signifi ...

  5. 容器性能比无容器服务器,【译】容器 vs 无服务器(Serverless)

    一些历史 不久之前,开发,部署和运维还相当复杂.在一开始,运维不仅需要修补程序代码,还要支持物理机器.保持服务器,硬件与软件处于最新状态也是一项艰巨的任务. 在2000年代,一个新的模型--架构即服务 ...

  6. 如何判断2服务器性能好或坏_无服务器革命:好,坏和丑

    如何判断2服务器性能好或坏 "这是愚蠢的. 比愚蠢还糟:这是一场营销炒作." ‐ 理查德·斯托曼 ( Richard Stallman)对云计算的评论,2008年9月 而且,十年后 ...

  7. 服务器返回它们的和_无服务器有其陷阱。 这是避免它们的方法。

    服务器返回它们的和 by Nicolas Dao 由Nicolas Dao 无服务器有其陷阱. 这是避免它们的方法. (Serverless has its pitfalls. Here's how ...

  8. java文件没反应_Java实现文件点击没反应的方法

    jsp页面链接,点击访问action用IO流去下载服务器上的文件,问题是任凭怎么点击都没反应,日志也不报错. 前台ajax代码 Ext.Ajax.request({ url : '/yjy/train ...

  9. Java面试没过_Java面试中遇到的坑【填坑篇】

    1.StringBuilder替代String拼接,面试中经常会问到 String,StringBuilder,StringBuffer的区别. 解答:String类作为java语言中最常见的字符串类 ...

最新文章

  1. 智能ABC拼音输入法的“秘密”
  2. 深入理解多线程(三)—— Java的对象头
  3. ML:MLOps系列讲解之《基于ML的软件的三个层次之02 Model: Machine Learning Pipelines——2.5 Different forms of ML workfl》解读
  4. 【Vscode】调试DotNet Core代码
  5. leetcode468. 验证IP地址
  6. java 保存和读取本地文件
  7. 生成用于ASP.NET Web API的C#客户端API
  8. 我的世界服务器自定义代码,《我的世界》服务器指令代码秘籍大全
  9. 华为-RH5885 V3 远程KVM
  10. 按下什么使物体复位_什么是继电器?继电器如何接线?
  11. Intelligence System HDU - 3072(强连通分量)
  12. mac 安装mysql5.7_mac 安装 mysql 5.7
  13. 经纬度坐标转像素坐标
  14. 1.(MySQL Router+MGR)MySQL Shell安装与用法
  15. 前端开发公众号的调试
  16. 一段简单的C/C++病毒源程序
  17. 高效的 Linux 限流神器Trickle
  18. ORACLE表唯一自增字段
  19. 《C语言内涵教程》前言
  20. 后端开发——Flask框架从入门到入坟(终章)

热门文章

  1. oracle删除查询的数据库语句,Oracle简略的语句 查询 删除 修改(1)
  2. qt动态添加窗口到垂直布局
  3. oracle表复制为mysql表_oracle 将数据库的表复制到另一个数据库表内
  4. java比赛用多重for_关于 Java 中 for的多重循环
  5. markdown格式_第1篇:如何将Markdown笔记转入ANKI复习? | 学习骇客
  6. linux看java堆大小,linux 改java堆内存大小
  7. 可选版本 安装软件_【Linux软件】在Deepin系统下安装LibreOffice 6.1.4版本的方法
  8. 计算机控制常用数据通信标准,计算机系统第6章通信ppt课件.ppt
  9. 2016重庆计算机一级考试题型,重庆计算机一级考试真题2016年最新(笔试+上机)
  10. python输出所有组合数_python – GridSearchCV是否存储了所有参数组合的所有分数?...