无状态

根据REST(REpresentational “State” Transfer)体系结构,服务器不会在服务器端存储有关客户端会话的任何状态。这种限制称为无状态。从客户端到服务器的每个请求都必须包含理解请求所需的所有信息,并且不能利用服务器上任何存储的上下文。因此,会话状态完全保留在客户端上。客户端负责在客户端存储和处理所有与应用程序状态相关的信息。

它还意味着客户端负责在需要时将任何状态信息发送到服务器。服务器上不应存在​​任何_会话关联_或粘性会话。

无状态意味着每个HTTP请求都完全隔离。当客户端发出HTTP请求时,它包含服务器完成该请求所需的所有信息。服务器永远不会依赖先前请求的信息。如果该信息很重要,客户端将在此请求中再次发送该信息。

为了使客户端能够访问这些无状态API,服务器还必须包括客户端可能需要创建状态的每条信息。

要成为无状态,请不要存储客户端的身份验证/授权详细信息。为请求提供凭据。每个请求必须独立,不应受到过去同一客户端之前发生的对话的影响。

应用状态与资源状态

请不要在应用程序状态和资源状态之间混淆。两者都完全不同。

应用程序状态是服务器端数据,服务器存储该数据以识别传入的客户端请求,其先前的交互细节和当前上下文信息。

资源状态是服务器上任何时间点资源的当前状态 - 它与客户端和服务器之间的交互无关。这是作为API响应从服务器获得的响应。您将其称为资源表示。

REST无状态意味着在应用程序状态下自由。

无状态的优点

使REST API无状态有一些非常显着的优点。

无状态通过将API部署到多个服务器,有助于将API扩展到数百万并发用户。任何服务器都可以处理任何请求,因为没有与会话相关的依赖。

无状态使得REST API不那么复杂 - 通过删除所有服务器端状态同步逻辑。

无状态API也很容易缓存。特定软件可以通过查看该一个请求来决定是否缓存HTTP请求的结果。从先前的请求中获得的状态可能会影响这个请求的可缓存性,这并不存在任何不确定性。它提高了应用程序的性能。

服务器永远不会忘记每个客户端在应用程序中的“位置”,因为客户端会在每个请求中发送所有必要的信息。

参考:罗伊T.菲尔丁对无状态

无状态逻辑服务器,无状态 | RESTful API 中文网相关推荐

  1. 基于轻量型Web服务器Raspkate的RESTful API的实现

    在上一篇文章<Raspkate - 基于.NET的可运行于树莓派的轻量型Web服务器>中,我们已经了解了Raspkate这一轻量型Web服务器,今天,我们再一起了解下如何基于Raspkat ...

  2. 网络连接状态断开服务器无响应,已断开(服务器无响应),路由器连不上网什么原因...

    路由器WAN口设置的地方显示:已断开(服务器无响应),路由器连不上网,问我应该怎么办.路由器中设置宽带拨号上网或者PPPoE拨号上网时,出现 已断开(服务器无响应) 这个问题的原因,主要有以下几个方面 ...

  3. 网络连接状态断开服务器无响应,路由器WAN口设置已断开(服务器无响应)的解决方法...

    路由器WAN口设置的地方显示:已断开(服务器无响应),路由器连不上网,应该怎么办? 路由器中设置宽带拨号上网或者PPPoE拨号上网时,出现 已断开(服务器无响应) 这个问题的原因,主要有以下几个方面. ...

  4. 宽带响应超时服务器无应答,宽带服务器无应答怎么办

    宽带服务器无应答怎么办 内容精选 换一换 Windows操作系统镜像执行Sysprep之后,使用该镜像创建的弹性云服务器启动时出现如下图的提示信息:提示信息且弹出如下提示信息:Windows无法分析或 ...

  5. 路由器pppoe拨号服务器无响应,pppoe服务器无响应

    pppoe服务器无响应 内容精选 换一换 删除指定ID的后端云服务器.删除后端云服务器后,不会再建立新的连接,但是原本建立在这个后端云服务器上的长连接还会保持.DELETE /v2.0/lbaas/p ...

  6. 服务器无响应 路由器,服务器无响应路由器

    服务器无响应路由器 内容精选 换一换 用户的弹性云服务器已绑定EIP,但是无法连接到Internet.弹性云服务器通过EIP访问Internet的流程如图1所示:本问题请按照以下思路进行排查处理.查看 ...

  7. 路由器登陆wlan网络连接服务器无响应,无线路由器服务器无响应

    无线路由器服务器无响应 内容精选 换一换 无法正常使用Cloud-init.弹性云服务器获取Metadata的流程如图1所示:获取Metadata流程图您可以按照以下原因进行排查,如果解决完某个可能原 ...

  8. 华为模拟服务器无响应,登陆服务器无响应

    登陆服务器无响应 内容精选 换一换 备案是中国大陆的一项法规,使用大陆节点服务器提供互联网信息服务的用户,需要在服务器提供商处提交备案申请.根据工信部<互联网信息服务管理办法>(国务院29 ...

  9. 手机运行服务器无响应,《最强蜗牛》服务器无响应怎么办 服务器无响应解决方法...

    导 读 最强蜗牛服务器无响应怎么办?本作在今日迎来了正式的公测,这会导致大批量的玩家同时涌入进来,而服务器也因此而遭受到了非常大的符合,所以会导致后续加入进来的玩家出现服务器无响应进不去的现象.下面就 ...

最新文章

  1. 转程序员,都去写一写前端代码吧
  2. Python 数据类型:列表
  3. [译] 沙箱中的间谍 - 可行的 JavaScript 高速缓存区攻击
  4. 当postgres的主键序列不同步时,如何重置?
  5. org.apache.hadoop.io
  6. 初学Windows编程笔记1——窗口和消息
  7. 11.13. Highslide
  8. C/C++求职宝典21个重点笔记(常考笔试面试点)
  9. Java中获取域名、端口号、项目名等实现路径适配
  10. 【2019.09.08】2019icpc南昌网络赛
  11. Atitit 代码的导航 1.1.代码的层次导航 语句 函数方法 类 包 1.2.4.4. 代码可视化 流程图 一个方法内,多个代码行的关系图 语句to方法 2 1.3.4.5. 类图 类结构
  12. CMOS电路中闩锁效应产生的原因、过程以及后果
  13. JAVAWEB实现短信验证---梦网云
  14. P问题、NP问题、NPC问题和NP-hard问题详解
  15. word文档字间距怎么调?拯救死气沉沉的文字仅需这样…
  16. Android 10.0 关机界面全屏显示(UI全屏显示)
  17. 互联网商业模式O2O、C2C、B2B、B2C等介绍
  18. java时间戳转换_Java编程实现时间和时间戳相互转换实例
  19. LCD中如何描绘点阵数据
  20. openwrt 内网域名 解析错误

热门文章

  1. Web 2.0背后的长尾理论
  2. Winfrom devexpress 通用权限框架
  3. React: 关于React通信方式
  4. Redis进阶实践之五Redis的高级特性
  5. mac 安装swoole
  6. Single Number II
  7. 2020年球云计算市值或将达4490亿欧元
  8. AfxBeginThread的介绍/基本用法和Window多线程使用详解
  9. GPUImageMovieWriter实现暂停录制,重新录制
  10. spider RPC更新至2.0.0-RELEASE