V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
SpencerCJH
V2EX  ›  Java

[Serverless In JVM] 几句话说说 Serverless?请指教

  •  
  •   SpencerCJH ·
    spencercjh · 2020-01-08 10:14:32 +08:00 · 3707 次点击
    这是一个创建于 1542 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我是 Java(Kotlin)后端程序员,最近上班摸鱼的时候闲着没事想找点新玩具(框架)学学,就看到了 vert.x,就看到了 Serverless。随便读了一些相关 blog。

    阿里云的相关产品叫 Function Compute,看了看 hello world。我的理解就是就是部署的时候服务器对程序员透明,依赖云服务商,只需要关心指定函数的业务,参数,路由等等,即函数即服务 FaaS。

    这样做有利有弊,而且并不是所有的服务都能做成这个样子的吧。

    阿里云的教程里有全套 Java Spring 项目上 Serverless 的 demo:再开一个 Maven 项目包装原项目的 war 包就能上 Serverless。

    但我觉得其中的意义就不大了,Serverless 是无状态的,是 xxx,是 xxx…………很多东西不能用以往的 Spring Web MVC 的思路来。

    Serverless 最早的产品是 Amazon Lambda,不知道在国内怎么样了,有没有什么最佳实践啊。Java 方面 Spring 就不太适合搞这个东西,而 vertx 看起来就不错(逃

    我看到了很多 python, nodeJs 的 demo,Java、Kotlin 怎么好好玩儿这个呢?

    17 条回复    2020-01-12 00:32:53 +08:00
    guxingke
        1
    guxingke  
       2020-01-08 12:27:51 +08:00
    什么! 还有 Spring 搞不定的? (逃
    ma836323493
        2
    ma836323493  
       2020-01-08 12:38:14 +08:00 via Android
    Serverless 是无状态的,是 xxx,是 xxx…………很多东西不能用以往的 Spring Web MVC 的思路来。


    听不懂说的什么
    janxin
        3
    janxin  
       2020-01-08 14:16:10 +08:00   ❤️ 1
    不是不能搞,不过 Serverless 很多是按运行时间付费的,如果你选择了一个启动很慢,执行时间很长的方案,除了多付钱 /响应慢外没什么其他负面影响
    SpencerCJH
        4
    SpencerCJH  
    OP
       2020-01-08 15:23:14 +08:00
    @ma836323493 不好意思……我自己没多读就发了。。。
    SpencerCJH
        5
    SpencerCJH  
    OP
       2020-01-08 15:24:06 +08:00
    @guxingke 其实没有吧……我看了一些 vertx 的东西,vertx web 感觉就是 spring webflux
    SpencerCJH
        6
    SpencerCJH  
    OP
       2020-01-08 15:24:34 +08:00
    @janxin 谢谢!有道理哈
    maichael
        7
    maichael  
       2020-01-08 15:28:05 +08:00
    其实就是一种新型外包,以前是要么全包,要么小包,现在出了中包。
    SpencerCJH
        8
    SpencerCJH  
    OP
       2020-01-08 15:31:18 +08:00
    @maichael PaaS,SaaS,FaaS……XaaS 好像都是你说的这样子呢哈哈哈
    luozic
        9
    luozic  
       2020-01-08 15:40:32 +08:00
    function 计算的核心点是单个 service 最好是业务自包含的(最多再加一点外部调用,支付,存储,exc ),否则就会变成基于消息队列的 function 风暴。
    SpencerCJH
        10
    SpencerCJH  
    OP
       2020-01-08 15:53:31 +08:00
    @luozic 是的呢,这是 Serverless 的一大限制。、


    我本想试着把手头上一个 AI CV 相关 的 py flask service 上 Serverless,但因为这个限制可能就不太好弄
    luozic
        11
    luozic  
       2020-01-08 15:57:39 +08:00 via iPhone   ❤️ 2
    如果是强业务类型,不要虚伪的微服务,还是 DDD 好好研究一下; 如果是纯数据的,倒是可以研究 functional programming
    SpencerCJH
        12
    SpencerCJH  
    OP
       2020-01-08 17:28:13 +08:00
    @luozic 赞👍 谢谢你
    wangyzj
        13
    wangyzj  
       2020-01-08 18:50:42 +08:00
    科特林可以写后端了?
    sagaxu
        14
    sagaxu  
       2020-01-08 19:27:56 +08:00 via Android
    @wangyzj 我都用 Kotlin 写了两年后端了,村网通?
    SpencerCJH
        15
    SpencerCJH  
    OP
       2020-01-08 19:53:09 +08:00
    @wangyzj spring 5 开始支持 kt 的,你去查查 spring5 什么时候 release 的。kotlin 最不济也能当 java 用,所以写后端是完全没有问题的,考特林 up up up !
    szq8014
        16
    szq8014  
       2020-01-09 09:37:12 +08:00
    你再了解一下 graalvm 和 AOT 岂不是能跳起来~
    tunzao
        17
    tunzao  
       2020-01-12 00:32:53 +08:00
    @ma836323493 Serverless 是无服务,不是无状态,把微服务的服务级别细化到方法,实现 Faas(Function As a Service)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5320 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 09:04 · PVG 17:04 · LAX 02:04 · JFK 05:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.