什么叫无状态

您所在的位置:网站首页 无状态化 什么叫无状态

什么叫无状态

2023-12-02 04:56| 来源: 网络整理| 查看: 265

什么叫无状态

  无状态指的是对于请求方的每个请求,接收方都当这次请求是第一次请求。为什么叫做无状态呢?因为对于请求方而言,每次请求时,接收方就像是失忆了一样,并不会依赖请求方以往的请求所生成的数据作回应。也就是说,就像是接收方没有保存请求方的状态(数据)一样,所以叫无状态。

  无状态并不代表接收方不会保存请求方的任何数据,它只是不保存与接收方可能的下次请求相关的数据。所以无状态要求请求方每次请求时,一次性提供与请求相关的全部数据,而不能因为某些数据在以前的请求中提供了,这次请求就不提供了。那么,接收方为什么不保存这些数据呢?原因有很多。一方面,保存这些数据需要空间消耗,另一方面,这会带来编程的负担。

  无状态要从请求方针对同一操作的不同次请求的请求数据来衡量。如果每次请求都必须携带完整的数据,那才能算作是无状态。

【注意】

  “每次请求都不会修改接收方的数据”,这指的并不是无状态,而应该称之为只读。只读的请求也一般也是无状态的,不过它们在概念上的侧重点不同。无状态只是代表接收方不会将数据空间来保存请求方的每次请求数据,但如果请求涉及对接收方数据库的更新,那么这个请求并不是只读的。接收方只是不能直接识别这是哪次请求而已,这不代表接收方的数据库不会受到每次请求的影响。

  根据对只读针对的对象不同,只读有可能也是有状态的。如果只读只是针对接收方真正有意义的那部分数据库,那只读有可能也是有状态的。比方说,接收方使用一种缓存来暂存请求方的最近的请求数据,然而接收方认为这种数据并不太重要,可随时抛弃,不会永久保存,那么即便这个请求是只读的,但它依然有是状态的。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3