当前位置:手机游戏 > 手游资讯 > 游戏攻略 > 无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处)

无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处)

作者:佚名 来源:哪吒游戏网 2020-03-03 18:03:40

无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处),哪吒游戏网给大家带来详细的无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处)介绍,大家可以阅读一下,希望这篇无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处)可以给你带来参考价值。

曾著

互联网创业者,关注高性能并发系统、移动互联网、创业、敏捷开发

20 人赞同了该回答

首先,要定义一下什么叫【无状态】。 假设用户A向服务B发了一个请求1,再次发送一个请求2。 服务端本身完全不知道两个请求来自同一个用户,这在协议层次就是【无状态】的。

【无状态】设计不是因为 @方正 所说的历史原因无状态去哪了,而是故意为之。无状态就意味着服务端可以根据需要将请求分发到集群的任何一个节点,对缓存、负载均衡有明显的好处,这一点很容易找到相关文献。

很多人对【无状态】感到不理解,大部分情况是误解了【无状态】的含义。http【无状态】仅仅是在*协议层*,当业务需要状态的时候,可以通过request中数据携带所需状态的id来实现。例如,为了让服务器知道是同一个用户的请求,请求1和请求2中必须携带一个相同的id无状态去哪了,让服务端可以根据这个id,最终找到用户数据(【状态】)。

实现1:这个状态如果放在处理请求的服务器进程中(例如session),那服务器进程就是有状态的,该用户下一个请求如果没分发到这个进程,就会拿不到上一次请求留下的状态,这样会影响负载均衡和缓存的实现。

实现2:这个状态如果放在处理请求的服务器进程之外的集中式存储,那服务器进程仍然是无状态的,可以集群、负载均衡。无状态服务一般都用这种方案。

最后我的观点是:无状态和有状态服务适合不同的场景,并没有绝对的优劣。

发布于 2018-01-21

朱元

cort_proto作者()请指教

4 人赞同了该回答

服务端有状态的话,服务器的内存开销会大很多很多,开发复杂度也难很多。 此外也和4层的长短连接的选择,产生一定耦合。

所以,还是让客户端去负责保存状态吧(持有cookie这些)。

发布于 2018-01-21

总结:以上内容就是针对无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处)详细阐释,如果您觉得有更好的建议可以提供给哪吒游戏网小编,无状态去哪了(HTTP为什么要设计成无状态的,这样比有状态有什么好处)部分内容转载自互联网,有帮助可以收藏一下。



上一篇: 无状态去哪了(GG!FPX官宣不再和无状态续约,老状态的下一站在哪里?)

下一篇: 无状态去哪了(OMG中单无状态去哪了 新中单icon谢天宇是谁)

本文标签: 无状态去哪了 无状态去哪了 omg无状态抢龙
猜你喜欢