啥是无状态的Serverless

简介: 无状态是指每次请求独立,不依赖之前的状态。Serverless架构将业务逻辑分解为动态调用的小型函数,实现无状态处理。数据则存储在持久化存储中。这种设计易于水平扩展、简化部署管理和提高可靠性,因无需考虑状态同步问题,故障恢复也更为高效。

无状态

无状态在计算机领域中经常能听到,比如我们会说HTTP是无状态的、Serverless 是无状态的,啥叫无状态?

所谓无状态,就是说每次请求都是独立的,服务不会依赖之前的请求状态来处理当前请求。

Serverless架构是一种典型的无状态架构。在Serverless中,应用程序的业务逻辑被分解为小型函数,这些函数在需要时被动态调用,调用完就被销毁了。下次再调用的时候再重新启动被调用。每次调用之间都没有什么依赖,因为它们依赖的根本都不存在了。

但是,这个无状态并不是说数据干脆都不落库、不存储了,不是的,只是说这个服务本身无状态,但是数据是存储在单独的持久化存储中的,比如 mysql,还是有状态的。

如果你还是蒙,给你个最简单理解,本地缓存这玩意,在serverless 中是没有的,因为他要依赖 JVM 内存,而 JVM是每次都要重新启动的。

无状态的设计有几个优点

易于水平扩展:由于每个请求都是独立处理的,无状态服务可以更容易地进行水平扩展,即通过增加服务器实例来增加处理能力,而不需要考虑状态同步的问题。

简化部署和管理:无状态服务通常更容易部署和管理,因为它们不需要复杂的状态管理机制,也不需要为每个请求维护连接状态或会话状态。

提高可靠性:无状态服务对于故障恢复和自动重试更有利,因为请求之间没有依赖关系或共享状态,一个请求的失败不会影响到其他请求。

相关实践学习
【玩转ComfyUI】基于函数计算一键部署AI生图平台ComfyUI
本次实验将带大家通过使用阿里云产品函数计算FC,快速使用ComfyUI实现更高质量的图像生成。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
|
消息中间件 存储 NoSQL
深入Redis消息队列:Pub/Sub和Stream的对决【redis第六部分】
深入Redis消息队列:Pub/Sub和Stream的对决【redis第六部分】
1310 0
|
算法 数据处理 开发者
FFmpeg库的使用与深度解析:解码音频流流程
FFmpeg库的使用与深度解析:解码音频流流程
491 0
|
10月前
|
Ubuntu Windows
双系统必备:Ubuntu自动挂载Windows分区
在双系统环境下,手动挂载Windows硬盘十分繁琐。本文介绍如何配置Ubuntu开机自动挂载Windows硬盘,包括硬盘识别、挂载点创建、fstab配置及验证步骤,帮助您节省时间,实现高效操作。
886 1
|
安全 数据处理 数据格式
深入浅出:FFmpeg 音频解码与处理AVFrame全解析(三)
深入浅出:FFmpeg 音频解码与处理AVFrame全解析
724 0
|
关系型数据库 MySQL Linux
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
在Linux系统中使用tar.xz压缩包安装MySQL数据库的详细步骤。包括下载MySQL压缩包,解压到指定目录,创建mysql用户和组,设置目录权限,初始化MySQL,配置my.cnf文件,启动服务,以及修改root用户密码。此外,还提供了如何设置Windows远程登录MySQL服务器的方法。
Linux 安装 mysql 【使用 tar.gz | tar.xz安装包-离线安装】
|
Dart 开发工具 Android开发
快速集成 Flutter Shorebird 热更新
Flutter Shorebird 是一种云端代码推送服务,可以让开发者在几分钟内集成,无需修改代码即可将更新推送到任何 Dart 代码,支持所有 Android 和 iOS 设备,并符合 App Store 和 Play Store 的规定。Shorebird 最大的优点是无代码侵入,快速集成,设计优秀。
1217 2
快速集成 Flutter Shorebird 热更新
|
存储 安全 Linux
OverTheWire Bandit 通关解析(上)
OverTheWire Bandit 通关解析(上)
|
应用服务中间件 测试技术 nginx
Nginx入门 -- 解析Nginx中的基本概念:Keepalive
Nginx入门 -- 解析Nginx中的基本概念:Keepalive
873 0
|
存储 运维 监控
从零入门 Serverless | 一文搞懂函数计算及其工作原理
在 Serverless 架构下,开发者只需要关注应用的开发构建和部署,无需关心服务器相关操作与运维。在函数计算架构下,开发者只需要编写业务代码并监控业务运行情况。这将开发者从繁重的运维工作中解放出来,把精力投入到更有意义的业务开发上。
从零入门 Serverless | 一文搞懂函数计算及其工作原理