CN110493340A - 分布式系统中的会话方法及装置 - Google Patents

分布式系统中的会话方法及装置 Download PDF

Info

Publication number
CN110493340A
CN110493340A CN201910772332.4A CN201910772332A CN110493340A CN 110493340 A CN110493340 A CN 110493340A CN 201910772332 A CN201910772332 A CN 201910772332A CN 110493340 A CN110493340 A CN 110493340A
Authority
CN
China
Prior art keywords
session
client
node
distributed system
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910772332.4A
Other languages
English (en)
Other versions
CN110493340B (zh
Inventor
周应超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN201910772332.4A priority Critical patent/CN110493340B/zh
Publication of CN110493340A publication Critical patent/CN110493340A/zh
Application granted granted Critical
Publication of CN110493340B publication Critical patent/CN110493340B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/148Migration or transfer of sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本公开是关于一种分布式系统中的会话方法及装置,涉及分布式系统中会话机制。本公开的一种分布式系统中的会话方法,应用于分布式系统的第一节点,包括:接收到客户端发起的建立会话请求时,与客户端建立第一会话,通过第一会话与客户端交互信息;在第一会话过程中,接收到客户端发起的设定操作时,将第一会话更新为第二会话,通过第二会话将与客户端交互的信息同步至分布式系统内的其他节点上。本公开的技术方案只在设定情况下才进行会话信息的同步操作,从而降低了分布式系统内节点的开销。并且对于无需参与整个会话过程的节点而言,可以同时接收其他客户端发起的会话请求,从而增加了分布式系统支持的并发客户端数量。

Description

分布式系统中的会话方法及装置
技术领域
本公开涉及分布式系统中会话机制,尤其涉及一种分布式系统中的会话方法及装置。
背景技术
分布式系统是分布式系统中重要的基础设施,分布式系统由多台节点组成机群对外提供服务,但所有节点对外展示统一的视图,在某些服务节点宕机重启等情况下也能提供一致的信息。分布式系统广泛应用在服务发现、分布式锁、分布式Leader选举等应用场景中。
发明内容
为克服相关技术中存在的问题,本公开提供一种分布式系统中的会话方法及装置。
根据本公开实施例的第一方面,提供一种分布式系统中的会话方法,应用于分布式系统的第一节点,包括:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
可选地,所述会话方法还包括:
在所述第一会话过程中,接收到客户端发起的设定操作时,将所述第一会话更新为第二会话,通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点。
可选地,所述会话方法中,所述将与所述客户端交互的信息同步至分布式系统内的其他节点,包括:
将接收到的所述客户端发起的设定操作和/或通过所述第一会话与所述客户端交互的信息发送至分布式系统内的其他节点。
可选地,所述会话方法还包括:
将所述第一节点和/或其他节点根据所述设定操作处理的结果反馈给所述客户端。
可选地,所述会话方法中,所述设定操作包括全局操作。
可选地,所述会话方法中,所述全局操作包括写操作和/或修改操作。
可选地,所述会话方法还包括:
在所述第二会话过程中,接收到客户端发起的非设定操作时,将所述第二会话恢复为第一会话。
根据本公开实施例的第二方面,提供一种分布式系统中的会话方法,应用于客户端,包括:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
可选地,所述会话方法还包括:
向所述第一节点发起设定操作,以使得所述第一节点将所述第一会话更新为第二会话,并使得所述第一节点通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点;
接收所述第一节点和/或分布式系统其他节点根据所述设定操作返回的处理结果。
可选地,所述会话方法还包括:
向所述第一节点发起非设定操作,以使得所述第一节点将所述第二会话恢复为第一会话。
可选地,所述会话方法还包括:
当客户端与所述第一节点连接断开时,与分布式系统其他节点建立会话。
根据本公开实施例的第三方面,提供一种分布式系统中的会话装置,包括:
接收模块,用于接收客户端发起的建立会话请求;
第一会话建立模块,用于与所述客户端建立第一会话;
第一发送模块,用于向所述客户端返回成功建立会话的响应;
第一会话信息传输模块,用于通过所述第一会话与所述客户端交互信息。
可选地,所述会话装置还包括:
第二会话模块,用于在所述第一会话过程中,接收到客户端发起的设定操作时,将所述第一会话更新为第二会话,并通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点。
可选地,所述会话装置中,所述第二会话模块,将与所述客户端交互的信息同步至分布式系统内的其他节点,包括:
将接收到的所述客户端发起的设定操作和/或通过所述第一会话与所述客户端交互的信息发送至分布式系统内的其他节点。
可选地,所述会话装置还包括:
第二发送模块,用于将分布式系统内第一节点和/或其他节点根据所述设定操作处理的结果反馈给所述客户端。
可选地,所述会话装置中,所述设定操作包括全局操作。
可选地,所述会话装置中,所述全局操作包括写操作和/或修改操作。
可选地,所述会话装置还包括:
更新模块,用于在所述第二会话过程中,接收到客户端发起的非设定操作时,将所述第二会话恢复为第一会话。
根据本公开实施例的第四方面,提供一种分布式系统中的会话装置,包括:
第一发送模块,用于向分布式系统的第一节点发起建立会话请求;
第一接收模块,用于接收所述第一节点返回的成功建立第一会话的响应;
信息传输模块,用于通过所述第一会话与所述第一节点交互信息。
可选地,所述会话装置还包括:
第二发送模块,用于向所述第一节点发起设定操作,以使得所述第一节点将所述第一会话更新为第二会话,并使得所述第一节点通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点;
第二接收模块,用于接收所述第一节点和/或分布式系统其他节点根据所述设定操作返回的处理结果。
可选地,所述会话装置还包括:
第三发送模块,向所述第一节点发起非设定操作,以使得所述第一节点将所述第二会话恢复为第一会话。
可选地,所述会话装置还包括:
恢复会话模块,用于在与所述第一节点连接断开时,与分布式系统其他节点建立会话。
根据本公开实施例的第五方面,提供一种分布式系统中的会话装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
根据本公开实施例的第六方面,提供一种分布式系统中的会话装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
根据本公开实施例的第七方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行一种分布式系统中的会话方法,所述方法包括:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
根据本公开实施例的第八方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种分布式系统中的会话方法,所述方法包括:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开的技术方案在会话建立后,只有建立会话的客户端和节点之间进行信息交互。可见,本公开的技术方案使得在会话建立初期,分布式系统内其他节点无需参与整个会话过程,可以降低分布式系统内节点的开销。并且对于无需参与整个会话过程的节点而言,可以同时接收其他客户端发起的会话请求,从而增加分布式系统支持的并发客户端数量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是相关技术中客户端与分布式系统中的节点之间进行会话的示意图。
图2是相关技术中客户端与分布式系统中的任一存活节点重新建立连接的示意图。
图3是根据一示例性实施例示出的一种分布式系统中的会话方法(分布式系统内节点侧)的流程图。
图4是根据一示例性实施例示出的一种分布式系统中的会话方法(客户端侧)的流程图。
图5是根据一示例性实施例示出的一种分布式系统中的会话方法(包括第一节点和客户端)的流程图。
图6是根据一示例性实施例示出的一种分布式系统中的会话建立的流程示意图。
图7是根据一示例性实施例示出的一种分布式系统中第一会话更新为第二会话的流程示意图。
图8是根据一示例性实施例示出的一种分布式系统中重新建立会话的流程示意图。
图9是根据一示例性实施例示出的一种分布式系统中的会话装置(分布式系统内节点侧)的框图。
图10是根据一示例性实施例示出的一种分布式系统中的会话装置(客户端侧)的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
相关技术中,分布式机群一般采用Paxos或其他类似算法来实现。对于客户端发起的每一个修改操作,当且仅当机群中超过一半节点接受该写操作,该操作才生效,这种机制使得机群中任意节点宕机后,客户端都可以通过类Paxos算法从其他节点来获取一致的状态视图。
在分布式服务机群中,客户端与机群交互的过程通常是先建立一个会话(session),然后通过该会话读取、创建及删除状态信息来达到服务的目的。由于修改操作与会话绑定,因此每个会话创建操作对于机群来说需要在各个服务器节点之间同步该创建操作。图1所示即为相关技术中建立会话的过程,该过程包括如下步骤:
步骤S11,客户端A向机群中节点1发起建立会话请求;
步骤S12,节点1建立与客户端A的会话,并将所建立会话的会话信息同步到机群中其他节点,例如节点2和节点3;
步骤S13,机群中其他节点分别向节点1返回收到会话信息的响应;
步骤S14,节点1向客户端A返回成功建立会话的响应。
按照上述操作将会话信息同步到机群中的其他节点后,节点1发生宕机后客户端能连接到机群中的其他节点以恢复同一个会话,此过程如图2所示,包括以下操作。
步骤S21,在已建立的会话中断时,客户端A请求连接到机群中其他某个节点。
步骤S22,接收到请求的节点与客户端A建立会话,并反馈已记录的会话信息。
可见,相关技术方案由于每个创建会话的操作都需要全局同步,这对于服务机群而言,全局同步会话创建操作的方式会使得机群能够支持的每秒查询次数(QPS,query persecond)较低,开销增大,使得一个机群能支持的客户端数量较少。
图3是根据本申请一示例性实施例示出的一种分布式系统中的会话方法的流程图。该会话方法可以由分布式系统内节点执行,本文将执行该方法的节点称为第一节点,该方法的实施过程如图3所示,包括以下步骤。
在步骤S31中,接收到客户端发起的建立会话请求;
在步骤S32中,与客户端建立第一会话;
在步骤S33中,向所述客户端返回成功建立会话的响应;
在步骤S34中,通过第一会话与客户端交互信息。
本实施例方案,在会话建立后,只有建立会话的客户端和节点之间进行信息交互。与相关技术中,分布式系统内节点与客户端建立的所有会话均需要同步至分布式系统内其他节点的方式相比,本实施例降低了分布式系统内节点的开销。而随着节点的开销减小,节点的性能提高,进而可以提高整个分布式系统的性能,大规模提高分布式系统支持的每秒查询次数(QPS,query per second)。并且对于无需参与整个会话过程的节点而言,可以同时接收其他客户端发起的会话请求,增加分布式系统支持的并发客户端数量,进而提高分布式系统的扩展性。
本实施例提供另一种分布式系统中的会话方法,该方法在上述步骤S32之后,增加如下操作:在第一会话过程中,接收到客户端发起的设定操作时,将第一会话更新为第二会话,通过第二会话将与客户端交互的信息同步至分布式系统内的其他节点上。
本实施例方案,在会话建立后,当需要进行设定操作时,将当前会话中客户端和节点之间的交互信息同步至分布式系统内的全部节点上。这样,分布式系统内其他节点无需参与整个会话过程,只在设定情况下进行会话信息的同步操作,可以降低分布式系统内节点的开销。
本实施例提供另一种分布式系统中的会话方法,该方法对上述将与所述客户端交互的信息同步至分布式系统内的其他节点的操作,采用如下方式实现:
将接收到的所述客户端发起的设定操作和/或通过所述第一会话与所述客户端交互的信息发送至分布式系统内的其他节点。
可见,针对设定操作将第一会话更新为第二会话后,需要将第一节点与客户端之间传输的信息例如,客户端下发给第一节点的设定操作,或者第一节点通过第一会话与客户端交互的信息等,下发给分布式系统内其他节点进行处理。例如,接收到设定操作的节点,可以按照设定操作在本地进行相应的处理。接收到第一节点通过第一会话与客户端交互的信息的节点,可以在本地存储接收到的信息。最终整个分布式系统内的所有节点上的数据都是按照客户端发起的同一个设定操作处理得到的,且客户端与第一节点之间交互的信息也同步到了整个分布式系统内所有节点上。其中,将与客户端交互的信息同步至分布式系统内的其他节点的操作,可以通过与这些节点已建立的链接来实现,也可以实时与节点建立链接后实现,还可以通过分布式系统内不同节点之间的常用通信方式来实现。
本实施例提供另一种分布式系统中的会话方法,该方法在将接收到的所述客户端发起的设定操作发送至分布式系统内的其他节点之后,还可以进行如下操作:
将所述第一节点和/或其他节点根据所述设定操作处理的结果反馈给所述客户端。
可见,将客户端发起的设定操作下发给分布式系统内其他节点进行处理后,可以将处理的结果通知给客户端。这样,客户端即可获知整个分布式系统内其他节点的信息同步状态。依据此信息同步的状态,在节点宕机引起会话中断时,客户端可以连接到保持信息同步的任一节点上,并根据该节点上已经同步的信息恢复会话即可。另外,将接收到处理的结果反馈给客户端时,可以是将接收到的一条或多条结果反馈给客户端,也可以将收到的所有结果反馈给客户端。
本实施例提供另一种分布式系统中的会话方法,该方法中,设定操作可以包括全局操作。本文中的全局操作可以是涉及到分布式系统整体的操作。例如,全局操作可以包括写操作和修改操作中的任一种或两种。本实施例中,删除操作属于修改操作。
本实施例提供另一种分布式系统中的会话方法,该方法在执行步骤S32之后,可以在第二会话过程中,接收到客户端发起的非设定操作时,将第二会话恢复为第一会话。恢复为第一会话后,只有建立会话的节点与客户端之间交互信息。这样,对于分布式系统内无需参与当前会话的节点而言,从当前会话中退出,可以释放出部分资源,从而降低节点自身的开销,提高分布式系统的整体性能,同时提高分布式系统的扩展性。本文中,非设定操作是与设定操作相对应的,非设定操作指即那些只涉及节点本身,与分布式系统整体无关的操作。非设定操作可以是非全局操作,例如读操作、查询操作等。
本实施例提供另一种分布式系统中的会话方法,该方法中,在步骤S32中所涉及的进行信息同步的其他节点,可以包括分布式系统内的一个或多个节点,也可以包括分布式系统内的所有节点。
图4是根据本申请一示例性实施例示出的一种分布式系统中的会话方法的流程图。该会话方法可以由客户端侧执行,该方法的实施过程如图4所示,包括以下步骤。
在步骤S41中,向分布式系统的第一节点发起建立会话请求;
在步骤S42中,接收所述第一节点返回的成功建立第一会话的响应;
在步骤S43中,通过所述第一会话与所述第一节点交互信息。
本实施例方案,在会话建立后,客户端与分布式系统内第一节点建立会话时,只与第一节点之间进行信息交互。与相关技术中,分布式系统内节点与客户端建立的所有会话均需要同步至分布式系统内其他节点的方式相比,本实施例降低了分布式系统内节点的开销。而随着节点的开销减小,节点的性能提高,进而可以提高整个分布式系统的性能,大规模提高分布式系统支持的每秒查询次数(QPS,query per second)。
本实施例提供另一种分布式系统中的会话方法,该方法中,在上述步骤S43之后,还进行如下操作:
向所述第一节点发起设定操作,以使得所述第一节点将所述第一会话更新为第二会话,并使得所述第一节点通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点;
接收所述第一节点和/或分布式系统其他节点根据所述设定操作返回的处理结果。
由上述内容可以看出,本实施例方案,在会话建立后,可以由客户端侧向第一节点发起设定操作,该设定操作除了指示第一节点需要进行相应处理以外,还可以指示第一节点将第一会话提升为第二会话,并将当前会话中客户端和节点之间的交互信息同步至分布式系统内的全部节点上。这样,客户端也可以接收第一节点和/或分布式系统内其他节点反馈的信息。可见,通过客户端发送的设定操作可以区分第一会话和第二会话,使得在分布式系统内其他节点无需参与整个会话过程,只在发生设定操作时才进行会话信息的同步操作,可以降低分布式系统内节点的开销。
本实施例提供另一种分布式系统中的会话方法,该方法在前文所描述的各种操作的基础,增加以下操作步骤:
向所述第一节点发起非设定操作,以使得所述第一节点将所述第二会话恢复为第一会话。
本实施例,考虑到非设定操作只需要与客户端直接建立会话的第一节点执行,而分布式系统内除了第一节点以外的其他节点无需参与非设定操作。因此,通过客户端发送的非设定操作可以将第二会话恢复为第一会话的。这样,从当前的第二会话中退出的其他节点可以释放出部分资源,从而降低节点自身的开销,提高分布式系统的整体性能,同时提高分布式系统的扩展性。
本实施例提供另一种分布式系统中的会话方法,该方法还包括如下操作:
当客户端与所述第一节点连接断开时,与分布式系统其他节点建立会话。
本实施例中,客户端与第一节点建立会话后,交互的信息已同步至整个分布式系统内,即客户端可获知整个分布式系统内其他节点的信息同步状态。因此,在第一节点宕机引起会话中断时,客户端可以连接到保持信息同步的任一节点上,并根据该节点上已经同步的信息恢复会话即可。这样,不会因为节点宕机造成会话中断,进而不会影响客户端的体验。
图5是根据本申请一示例性实施例示出的一种分布式系统中的会话方法的流程图。该会话方法包括节点侧和客户端侧的操作,该方法的实施过程如图5所示,包括以下步骤。
在步骤S51中,客户端向分布式系统的第一节点发起建立会话请求;
在步骤S52中,第一节点接收客户端发起的建立会话请求;
在步骤S53中,第一节点与客户端建立第一会话;
在步骤S54中,第一节点向客户端返回成功建立会话的响应;
在步骤S55中,客户端接收所述第一节点返回的成功建立第一会话的响应;
在步骤S56中,客户端通过第一会话与第一节点交互信息。
下面结合图6至图8说明本申请一示例性实施例示出的一种分布式系统中的会话方法的具体实施方式。其中,为便于说明,假设分布式系统内至少包括节点1、节点2和节点3。
图6所示是分布式系统中建立会话的流程图。如图5所示,建立会话的过程包括如下操作步骤:
步骤S61,分布式系统中节点1接收客户端A发起的建立会话请求;
步骤S62,节点1建立与客户端A的第一会话,向客户端反馈会话建立成功的应答。
从图6可以看出,节点1与客户端A建立第一会话后,不会将第一会话同步到分布式系统内的其他节点上。
图7所示是分布式系统中更新会话的流程图。本实施例中,节点1接收到的设定操作为写操作,根据此写操作将第一会话更新为第二会话的过程,如图7所示,包括如下操作步骤:
步骤S71,分布式系统中节点1接收客户端A发起的写操作;
步骤S72,节点1将第一会话更新为第二会话,请求与其他节点进行信息同步;
步骤S73,节点1接收其他节点返回的应答,与其他节点建立链接以进行信息同步;
步骤S74,节点1向其他节点发送客户端A发起的写操作;
步骤S75,节点1接收其他节点返回的针对写操作的执行结果;
步骤S76,节点1将接收到的写操作的执行结果反馈给客户端A。
图8是分布式系统中恢复会话的流程图。本实施例中,与客户端A保持第一会话的节点1发生宕机,此时恢复第一会话的过程,如图8所示,包括如下操作步骤:
步骤S81,正在进行的第一会话中断,客户端A从接收到的分布式系统内各节点反馈的执行结果中,确定节点2和3进行过信息同步的节点,从中随机选择节点3发起重新建立会话的请求;
步骤S82,节点3接收到重新建立会话的请求后,与客户端A建立第一会话。
上述步骤S82中,由于在节点3上已经进行过信息同步,因此新的第一会话可以读取到和中断的第一会话相同的信息,不会影响会话的一致性。
图9是根据本申请一示例性实施例示出的一种分布式系统中的会话装置框图。该装置可以是分布式系统的节点设备,也可以做为单独的装置置于节点设备内。参照图9,该会话装置至少包括接收模块91、第一会话建立模块92、第一发送模块93和第一会话信息传输模块94。
接收模块91,被配置为,接收客户端发起的建立会话请求;
第一会话建立模块92,被配置为,与客户端建立第一会话;
第一发送模块93,被配置为,向所述客户端返回成功建立会话的响应;
第一会话信息传输模块94,被配置为,通过第一会话与客户端交互信息。
本实施例提供另一种分布式系统中的会话装置,该装置中增加了第二会话模块。
第二会话模块,被配置为,在第一会话过程中,接收到客户端发起的设定操作时,将第一会话更新为第二会话,通过第二会话将与客户端交互的信息同步至分布式系统内的其他节点上。
本实施例提供另一种分布式系统中的会话装置,该装置中第二会话模块可以包括第二会话子模块。
第二会话子模块,被配置为,将接收到的所述客户端发起的设定操作和/或通过所述第一会话与所述客户端交互的信息发送至分布式系统内的其他节点。
本实施例提供另一种分布式系统中的会话装置,该装置增加了第二发送模块。
第二发送模块,被配置为,将分布式系统内第一节点和/或其他节点根据所述设定操作处理的结果反馈给所述客户端。
本实施例提供另一种分布式系统中的会话装置,该装置中,设定操作可以包括全局操作。其中,全局操作可以包括写操作和/或修改操作。
本实施例提供另一种分布式系统中的会话装置,该装置增加了更新模块。
更新模块,被配置为,在第二会话过程中,接收到客户端发起的非设定操作时,将第二会话恢复为第一会话。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是根据本申请一示例性实施例示出的一种分布式系统中的会话装置框图。该装置可以是客户端设备,也可以做为单独的装置置于客户端设备内。参照图10,该会话装置至少包括第一发送模块1001、第一接收模块1002和信息传输模块1003。
第一发送模块1001,被配置为,向分布式系统的第一节点发起建立会话请求;
第一接收模块1002,被配置为,接收所述第一节点返回的成功建立第一会话的响应;
信息传输模块1003,被配置为,通过所述第一会话与所述第一节点交互信息。
本实施例提供另一种分布式系统中的会话装置,该装置增加了第二发送模块和第二接收模块。
第二发送模块,被配置为,向第一节点发起设定操作,以使得第一节点将第一会话更新为第二会话,并使得第一节点通过第二会话将与客户端交互的信息同步至分布式系统内的其他节点;
第二接收模块,被配置为,接收第一节点和/或分布式系统其他节点根据设定操作返回的处理结果。
本实施例提供另一种分布式系统中的会话装置,该装置增加第三发送模块。
第三发送模块,被配置为,向所述第一节点发起非设定操作,以使得所述第一节点将所述第二会话恢复为第一会话。
本实施例提供另一种分布式系统中的会话装置,该装置增加恢复会话模块。
恢复会话模块,被配置为,在与所述第一节点连接断开时,与分布式系统其他节点建立会话。
一种示例性实施例提供一种分布式系统中的会话装置,包括:处理器,以及用于存储处理器可执行指令的存储器;
其中,处理器被配置为:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
关于上述实施例中的装置,其中处理器被配置执行的操作的具体方式已经在有关分布式系统中的会话方法的实施例中进行了详细描述,此处将不做详细阐述说明。
一种示例性实施例提供一种分布式系统中的会话装置,包括:处理器,以及用于存储处理器可执行指令的存储器;
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
关于上述实施例中的装置,其中处理器被配置执行的操作的具体方式已经在有关分布式系统中的会话方法的实施例中进行了详细描述,此处将不做详细阐述说明。
一种示例性实施例提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行一种分布式系统中的会话方法,所述方法包括:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
关于上述实施例中的非临时性计算机可读存储介质,其中移动终端执行的分布式系统中的会话方法的具体方式已经在有关多重曝光摄影方法的实施例中进行了详细描述,此处将不做详细阐述说明。
一种示例性实施例提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种分布式系统中的会话方法,所述方法包括:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
关于上述实施例中的非临时性计算机可读存储介质,其中移动终端执行的分布式系统中的会话方法的具体方式已经在有关多重曝光摄影方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (26)

1.一种分布式系统中的会话方法,应用于分布式系统的第一节点,其特征在于,包括:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
2.根据权利要求1所述的会话方法,其特征在于,所述会话方法还包括:
在所述第一会话过程中,接收到客户端发起的设定操作时,将所述第一会话更新为第二会话,通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点。
3.根据权利要求2所述的会话方法,其特征在于,所述将与所述客户端交互的信息同步至分布式系统内的其他节点,包括:
将接收到的所述客户端发起的设定操作和/或通过所述第一会话与所述客户端交互的信息发送至分布式系统内的其他节点。
4.根据权利要求2所述的会话方法,其特征在于,所述会话方法还包括:
将所述第一节点和/或其他节点根据所述设定操作处理的结果反馈给所述客户端。
5.根据权利要求2所述的会话方法,其特征在于,
所述设定操作包括全局操作。
6.根据权利要求5所述的会话方法,其特征在于,
所述全局操作包括写操作和/或修改操作。
7.根据权利要求2至6任一项所述的会话方法,其特征在于,所述会话方法还包括:
在所述第二会话过程中,接收到客户端发起的非设定操作时,将所述第二会话恢复为第一会话。
8.一种分布式系统中的会话方法,应用于客户端,其特征在于,包括:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
9.根据权利要求8所述的会话方法,其特征在于,所述会话方法还包括:
向所述第一节点发起设定操作,以使得所述第一节点将所述第一会话更新为第二会话,并使得所述第一节点通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点;
接收所述第一节点和/或分布式系统其他节点根据所述设定操作返回的处理结果。
10.根据权利要求9所述的会话方法,其特征在于,所述会话方法还包括:
向所述第一节点发起非设定操作,以使得所述第一节点将所述第二会话恢复为第一会话。
11.根据权利要求8所述的会话方法,其特征在于,所述会话方法还包括:
当客户端与所述第一节点连接断开时,与分布式系统其他节点建立会话。
12.一种分布式系统中的会话装置,其特征在于,包括:
接收模块,用于接收客户端发起的建立会话请求;
第一会话建立模块,用于与所述客户端建立第一会话;
第一发送模块,用于向所述客户端返回成功建立会话的响应;
第一会话信息传输模块,用于通过所述第一会话与所述客户端交互信息。
13.根据权利要求12所述的会话装置,其特征在于,所述会话装置还包括:
第二会话模块,用于在所述第一会话过程中,接收到客户端发起的设定操作时,将所述第一会话更新为第二会话,并通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点。
14.根据权利要求13所述的会话装置,其特征在于,所述第二会话模块包括:
第二会话子模块,用于将接收到的所述客户端发起的设定操作和/或通过所述第一会话与所述客户端交互的信息发送至分布式系统内的其他节点。
15.根据权利要求13所述的会话装置,其特征在于,所述会话装置还包括:
第二发送模块,用于将分布式系统内第一节点和/或其他节点根据所述设定操作处理的结果反馈给所述客户端。
16.根据权利要求13所述的会话装置,其特征在于,
所述设定操作包括全局操作。
17.根据权利要求16所述的会话装置,其特征在于,
所述全局操作包括写操作和/或修改操作。
18.根据权利要求12至17任一项所述的会话装置,其特征在于,所述会话装置还包括:
更新模块,用于在所述第二会话过程中,接收到客户端发起的非设定操作时,将所述第二会话恢复为第一会话。
19.一种分布式系统中的会话装置,其特征在于,包括:
第一发送模块,用于向分布式系统的第一节点发起建立会话请求;
第一接收模块,用于接收所述第一节点返回的成功建立第一会话的响应;
信息传输模块,用于通过所述第一会话与所述第一节点交互信息。
20.根据权利要求19所述的会话装置,其特征在于,所述会话装置还包括:
第二发送模块,用于向所述第一节点发起设定操作,以使得所述第一节点将所述第一会话更新为第二会话,并使得所述第一节点通过所述第二会话将与所述客户端交互的信息同步至分布式系统内的其他节点;
第二接收模块,用于接收所述第一节点和/或分布式系统其他节点根据所述设定操作返回的处理结果。
21.根据权利要求19或20所述的会话装置,其特征在于,所述会话装置还包括:
第三发送模块,向所述第一节点发起非设定操作,以使得所述第一节点将所述第二会话恢复为第一会话。
22.根据权利要求19所述的会话装置,其特征在于,所述会话装置还包括:
恢复会话模块,用于在与所述第一节点连接断开时,与分布式系统其他节点建立会话。
23.一种分布式系统中的会话装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
24.一种分布式系统中的会话装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
25.一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行一种分布式系统中的会话方法,所述方法包括:
接收客户端发起的建立会话请求;
与所述客户端建立第一会话;
向所述客户端返回成功建立会话的响应;
通过所述第一会话与所述客户端交互信息。
26.一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种分布式系统中的会话方法,所述方法包括:
向分布式系统的第一节点发起建立会话请求;
接收所述第一节点返回的成功建立第一会话的响应;
通过所述第一会话与所述第一节点交互信息。
CN201910772332.4A 2019-08-21 2019-08-21 分布式系统中的会话方法及装置 Active CN110493340B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910772332.4A CN110493340B (zh) 2019-08-21 2019-08-21 分布式系统中的会话方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910772332.4A CN110493340B (zh) 2019-08-21 2019-08-21 分布式系统中的会话方法及装置

Publications (2)

Publication Number Publication Date
CN110493340A true CN110493340A (zh) 2019-11-22
CN110493340B CN110493340B (zh) 2023-08-04

Family

ID=68551755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910772332.4A Active CN110493340B (zh) 2019-08-21 2019-08-21 分布式系统中的会话方法及装置

Country Status (1)

Country Link
CN (1) CN110493340B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067375A (zh) * 2012-12-26 2013-04-24 北京思特奇信息技术股份有限公司 一种网络节点间进行连接会话的方法及装置
CN103209223A (zh) * 2013-04-27 2013-07-17 中国农业银行股份有限公司 分布式应用会话信息共享方法、系统和应用服务器
CN105027528A (zh) * 2012-12-20 2015-11-04 英国电讯有限公司 会话建立的过载控制
CN105208058A (zh) * 2014-06-19 2015-12-30 中国银联股份有限公司 基于web会话共享的信息交互系统
CN106027677A (zh) * 2016-07-13 2016-10-12 浪潮通用软件有限公司 一种分布式Web应用程序会话管理方法
CN106130882A (zh) * 2016-07-13 2016-11-16 北京百度网讯科技有限公司 用于传输消息的方法和装置
CN106572054A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 分布式系统中分布式锁服务实现方法以及装置
CN106790420A (zh) * 2016-11-30 2017-05-31 华为技术有限公司 一种多会话通道建立方法和系统
US20170155691A1 (en) * 2015-12-01 2017-06-01 Vmware, Inc. Exclusive session mode resilient to failure
WO2017097011A1 (zh) * 2015-12-09 2017-06-15 国家电网公司 基于集群节点间即时拷贝的会话同步方法
US20170310763A1 (en) * 2016-04-21 2017-10-26 Servicenow, Inc. System and method for session restoration after node failure
CN109547512A (zh) * 2017-09-22 2019-03-29 中国移动通信集团浙江有限公司 一种基于NoSQL的分布式Session管理的方法及装置
CN110022333A (zh) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 分布式系统的通信方法及装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105027528A (zh) * 2012-12-20 2015-11-04 英国电讯有限公司 会话建立的过载控制
CN103067375A (zh) * 2012-12-26 2013-04-24 北京思特奇信息技术股份有限公司 一种网络节点间进行连接会话的方法及装置
CN103209223A (zh) * 2013-04-27 2013-07-17 中国农业银行股份有限公司 分布式应用会话信息共享方法、系统和应用服务器
CN105208058A (zh) * 2014-06-19 2015-12-30 中国银联股份有限公司 基于web会话共享的信息交互系统
CN106572054A (zh) * 2015-10-09 2017-04-19 阿里巴巴集团控股有限公司 分布式系统中分布式锁服务实现方法以及装置
US20170155691A1 (en) * 2015-12-01 2017-06-01 Vmware, Inc. Exclusive session mode resilient to failure
WO2017097011A1 (zh) * 2015-12-09 2017-06-15 国家电网公司 基于集群节点间即时拷贝的会话同步方法
US20170310763A1 (en) * 2016-04-21 2017-10-26 Servicenow, Inc. System and method for session restoration after node failure
CN106130882A (zh) * 2016-07-13 2016-11-16 北京百度网讯科技有限公司 用于传输消息的方法和装置
CN106027677A (zh) * 2016-07-13 2016-10-12 浪潮通用软件有限公司 一种分布式Web应用程序会话管理方法
CN106790420A (zh) * 2016-11-30 2017-05-31 华为技术有限公司 一种多会话通道建立方法和系统
CN109547512A (zh) * 2017-09-22 2019-03-29 中国移动通信集团浙江有限公司 一种基于NoSQL的分布式Session管理的方法及装置
CN110022333A (zh) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 分布式系统的通信方法及装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
MICHELE STECCA: "Sticky Session Support in Auto Scaling IaaS Systems", 2011 IEEE WORLD CONGRESS ON SERVICES *
孙天昊等: "一种基于cookie会话保持的LVS集群系统", 《计算机应用研究》 *
孙天昊等: "一种基于cookie会话保持的LVS集群系统", 《计算机应用研究》, no. 04, 15 April 2013 (2013-04-15) *
曹海涛;胡牧;蒋厚明;: "基于集群节点间即时拷贝的会话同步技术研究", 计算机系统应用, no. 03 *
赵艳芳等: "Web服务器负载均衡会话保持的研究", 《云南民族大学学报(自然科学版)》 *
赵艳芳等: "Web服务器负载均衡会话保持的研究", 《云南民族大学学报(自然科学版)》, no. 04, 10 July 2011 (2011-07-10), pages 2 - 4 *

Also Published As

Publication number Publication date
CN110493340B (zh) 2023-08-04

Similar Documents

Publication Publication Date Title
JP4920052B2 (ja) 通信システム及びサーバ
EP2636199B1 (en) Signalling gateway, method, computer program and computer program product for communication between http and sip
WO2017219557A1 (zh) 数据传输方法及数据传输装置
AU2008319124B2 (en) Method and apparatus for peer to peer link establishment over a network
CN104253856A (zh) 可缩放Web实时通信媒体引擎以及相关的方法、系统
JP2006294009A (ja) ピアツーピアメッセージングアプリケーションを構築するためのapi
CN101272266A (zh) 一种音视频会议中实现文件共享的方法、装置及系统
CN104205756A (zh) 并发进程执行
RU2313188C2 (ru) Расширяемые коммуникационные средства управления
CN104902111B (zh) 一种基于Web RTC多方通话建立的方法、设备和系统
CN113055539B (zh) 一种基于VoIP双冗余交换服务器的通信系统
CN101159702B (zh) 电话用户与pc用户进行语音沟通的方法、系统及设备
WO2017198158A1 (zh) 一种会话管理的方法、设备和系统
CN110493340A (zh) 分布式系统中的会话方法及装置
CN107864161A (zh) 一种数据传输方法和装置
CN102624759B (zh) 一种实现会话中数据迁移的方法和节点
JP2009135590A (ja) 会議装置及び接続制御方法
CN115766829A (zh) 通信处理方法和通信节点
CN110233791A (zh) 数据去重方法和装置
CN112039822B (zh) 一种基于WebRTC构建实时区块链网络的方法及系统
CN114785801A (zh) 一种动态构建分布式隐私网络拓扑的p2p引擎
US8068128B2 (en) Visual communication server and communication system
JP5519554B2 (ja) 呼制御システムおよび呼制御に利用する情報の冗長化方法
US11201898B2 (en) SIP proxy server, communication method and SIP proxy program
JP5102153B2 (ja) Sipシグナリングにおけるコマンドシーケンス番号の制御方法、サーバ及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant