Registry Server 的实现 XX
Registry Server 的实现 XX
Registry server的实现 数据结构 消息发布 消息处理
Registry Server的实现 • 数据结构 • 消息发布 • 消息处理
数据结构(实现的结构) Message MsgBody ype Content Unique Id Time MsgBody Process(
数据结构(实现的结构) Message Type Unique Id Time MsgBody MsgBody Content Process()
数据结构(实现的结构) MessageDisseminator ServerSocket MessageThread
数据结构(实现的结构) MessageDisseminator ServerSocket MessageThread
消息发布 全局: Gossip算法(K=N) 两点间 直接用 Socket发送
消息发布 • 全局: – Gossip算法(K = N) • 两点间: – 直接用Socket发送
消息处理 消息在本地完成的处理作为消息的一部分, 由消息本身完成 消息的接收和转发由 Disseminator完成
消息处理 • 消息在本地完成的处理作为消息的一部分, 由消息本身完成 • 消息的接收和转发由Disseminator完成
ServerManager 运行Gui 启动和停止 Service container和 ServerDisseminator 处理有关 Server的操作
ServerManager • 运行Gui • 启动和停止ServiceContainer和 ServerDisseminator • 处理有关Server的操作
改进的想法 ●主要是对数据结构的改进,算法基本不变 将 MessageDisseminator独立出来,做成 个消息监听类,只负责消息的接收和转 发。 ServerMessageDisseminator和 ClientMessageDisseminato不再继承 MessageDisseminatol而是将其作为数据 成员,通过 Delegation来实现消息监听
改进的想法 • 主要是对数据结构的改进,算法基本不变 • 将MessageDisseminator独立出来,做成 一个消息监听类,只负责消息的接收和转 发。ServerMessageDisseminator和 ClientMessageDisseminator不再继承 MessageDisseminator而是将其作为数据 成员,通过Delegation来实现消息监听
改进的想法(续) 将消息处理从消息中分离出来,为每一类 消息构建一个消息处理类。 MessageDisseminator接收到消息后,把 消息抛给相应的消息处理类,由相应的消 息处理类完成消息在本地的处理。如果有 必要,可以构造消息解析类,找出每个消 息对应的消息处理类
改进的想法(续) • 将消息处理从消息中分离出来,为每一类 消息构建一个消息处理类。 MessageDisseminator接收到消息后,把 消息抛给相应的消息处理类,由相应的消 息处理类完成消息在本地的处理。如果有 必要,可以构造消息解析类,找出每个消 息对应的消息处理类