session
2016-04-05 20:55:14 0 举报
登录查看完整内容
Session(会话)是指在计算机网络中,两个或多个通信设备之间进行数据传输的过程。在这个过程中,每个设备都会保持一定的状态信息,以便在后续的通信中能够识别对方和保持连续性。会话可以是短暂的,也可以是长时间的,取决于具体的应用场景和需求。 在Web开发中,会话通常用于跟踪用户的状态,例如登录状态、购物车内容等。为了实现这一目标,服务器会在用户的浏览器上创建一个会话ID,然后将这个ID与用户的状态信息关联起来。这样,当用户在不同的页面之间跳转时,服务器就可以通过会话ID来识别用户并获取其状态信息。
作者其他创作
大纲/内容
启动ServerCnxnFactory主线程
FinalRequestProcessor
初始化ServerCnxnFactory
创建内存数据库ZKDatabase
存储已经被Commit处理过的可被提交的Proposal
成功连接上服务器
会话超时,权限检查失败,客户端主动退出程序
完成事务日志记录后,向Leader发送ACK以表明自身完成了事务日志的记录
SyncRequestProcessor
Follower流程
事务投票处理器,服务器事务处理流程的发起者,对于事务请求会创建相应的Proposal提议并发给所有follow服务器来发起事务投票
注册JMX服务
事务请求转交进行事务日志记录
创建数据管理器FileTxnSnapLog
客户端创建Zoo对象
CONNECTING
创建并启动会话管理器SessionTracker
事务日志记录处理器,主要用来将事务请求记录到事务日志文件中,同时触发Zoo进行数据快照
start
解析配置文件zoo.cfg
用来进行客户端请求返回之前的首位,包括创建客户端请求的响应
服务器启动完成
集群or单机
FollowerRequestProcessor
PrepRequestProcessor
初始化QuorumPeer
识别当前请求是事务请求还是非事务请求,事务请求则转发给Leader
Leader特有,负责事务日志记录后,向Proposal投票收集器发送Ack反馈
该处理器会识别出当前客户端请求是否是事务请求
创建QuorumPeer实例
ToBeAppliedRequestProcessor
创建ServerCnxnFactory
事务提交处理器,对于非事务请求直接下级处理器处理,事务请求则等待Proposal投票直到可被提交
CommitProcessor
CLOSE
恢复本地数据
集群
初始化Zoo的请求处理链
注册ZooKeeper服务器实例
启动QuorumPeer
ProposalRequestProcessor
网络闪断,连接断开
Leader选举
初始化Leader选举
SendAckRequestProcessor
CONNECTED
Leader Server
负责管理Zoo的所有会话记录和DataTree以及事务日志的存储
end
Leader流程
QuorummPeerMain作为启动类开始启动
创建并启动历史文件清理器DatadirCleanupManager
检测服务器状态:LOOKING
AckRequestProcessor
0 条评论
回复 删除
下一页