微服务之会话管理

Session 会话

通常我们所说的会话是两个或更多个通信设备之间或计算机和用户之间的半永久性交互式信息交换, 会话在某个时间点建立,然后在稍后的时间点拆除。

建立的通信会话可以在每个方向上涉及多于一个消息, 这些消息只存在这个会话中, 而与其他会话隔离.

会话通常是有状态的,这意味着至少一个通信部分需要保存关于会话历史的信息以便能够进行通信,这与无状态通信相反,其中通信由具有响应的独立请求组成。

而状态保存在什么地方, 有很多选择, 内存中, 磁盘上, 共享缓存中, 数据库里, 总有一款适合你.

常见的会话就有 TCP Session, SIP Session , RTP Session , HTTP Session 等等, 分别工作在传输层, 会话层和应用层

TCP Session

这个自不必说, 用三次握手建立会话, 四次挥手终止会话

  • 三次握手 

    TCP Session Estalish

  • 四次挥手

这样在连接的两端就建立了一个 TCP Session, 并且维护着会话状态

SIP/RTP Session

SIP是一种应用层控制协议,可以建立,修改和终止多媒体会话(会议),例如互联网电话呼叫,多媒体分发播放和多媒体会议。它在TCP 或 UDP 之上通过 INVITE 消息来搭建用户代理之间的信令(控制 - SIP Session) 和媒体会话 (RTP Session)

这里不做赘述, 请见微服务协议之 SIP

更多细节见 RFC

整理了一份面试笔记包括了:Java面试、Spring、JVM、MyBatis、Redis、MySQL、并发编程、微服务、Linux、Springboot、SpringCloud、MQ、Kafka 面试专题

需要全套面试笔记的【点击此处即可】即可免费获取

Http Session

这里重点讲讲 HTTP Session, 传统 Web 应用里都有一个 session 的概念,相比用 Cookie 在客户端记录信息确定用户身份, Session 一般是在服务器端记录信息确定用户身份和状态, 这里的状态不仅指用户登录和在线的状态, 也包括应用层中的一些业务相关的信息, 比如很多网站的购物车就是放在 Http Session 里的.

在分布式系统中, 通常不建议将会话状态放在一台服务器的内存或磁盘中, 因为这样的话, 系统会有单点失败而导致的服务不

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值