CN112131056A - 多机房服务切换的控制方法、系统、计算设备及存储介质 - Google Patents

多机房服务切换的控制方法、系统、计算设备及存储介质 Download PDF

Info

Publication number
CN112131056A
CN112131056A CN202010980403.2A CN202010980403A CN112131056A CN 112131056 A CN112131056 A CN 112131056A CN 202010980403 A CN202010980403 A CN 202010980403A CN 112131056 A CN112131056 A CN 112131056A
Authority
CN
China
Prior art keywords
component
machine room
room
target
control command
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.)
Pending
Application number
CN202010980403.2A
Other languages
English (en)
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.)
Ireader Technology Co Ltd
Original Assignee
Ireader Technology 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 Ireader Technology Co Ltd filed Critical Ireader Technology Co Ltd
Priority to CN202010980403.2A priority Critical patent/CN112131056A/zh
Publication of CN112131056A publication Critical patent/CN112131056A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • H04L12/5692Selection among different networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明公开了一种多机房服务切换的控制方法、系统、计算设备及存储介质,该方法包括:基于任一服务的由源机房至目标机房的跨机房切换请求,确定该服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;该源机房的至少一个组件根据该第一联动控制命令,进行禁止数据写入处理和/或停止消费处理;该源机房的至少一个组件向该目标机房的至少一个组件同步数据;在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;该目标机房的至少一个组件根据该第二联动控制命令,进行允许数据写入处理和/或允许消费处理,完成服务切换。通过上述本发明方案,可以实现服务在多个机房间的快速切换,并且可确保切换后数据不丢失。

Description

多机房服务切换的控制方法、系统、计算设备及存储介质
技术领域
本发明涉及互联网技术领域,具体涉及一种多机房服务切换的控制方法、系统、计算设备及存储介质。
背景技术
随着业务量的增长、业务范围的扩大,单机房往往不能提供稳定可靠的服务,此种情况下,部署多机房是较为普遍的选择,其中,每个机房可对外提供若干服务,以及,每个服务通常依赖一个或多个组件来实现。与此同时,在实际中,往往存在将一个机房提供的服务切换到另一个机房的需求,例如,某一机房的访问压力大,需进行服务切换,通过服务切换,才能继续向业务方提供稳定的服务。
现有技术中,通常只能通过人工方式进行服务切换,切换效率低,导致服务长时间故障。因此,亟需一种可以高效的进行服务切换的方案,
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的多机房服务切换的控制方法、系统、计算设备及存储介质。
根据本发明实施例的一个方面,提供了一种多机房服务切换的控制方法,包括:
基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;
所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理;
所述源机房的至少一个组件向所述目标机房的至少一个组件同步数据;
在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
根据本发明实施例的另一方面,提供了一种多机房服务切换的控制系统,包括:切换控制平台以及至少两个机房,所述至少两个机房对等部署有各种服务依赖的多个组件;其中,
所述切换控制平台用于:基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;以及,在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
源机房的至少一个目标组件用于:根据所述第一联动控制命令,进行禁止写入处理和/或停止消费处理,以及,向所述目标机房的至少一个组件同步数据;
目标机房的至少一个目标组件用于:根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
根据本发明实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述多机房服务切换的控制方法对应的操作。
根据本发明实施例的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行上述多机房服务切换的控制方法对应的操作。
根据本发明的多机房服务切换的控制方法、系统、计算设备及存储介质,针对任一服务的切换请求,确定该服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令,并行控制源机房的至少一个组件禁止数据写入和/或停止消费处理,以准备进行数据同步,并避免同步过程中产生新的数据;源机房的至少一个组件在响应完第一联动控制命令后,向目标机房的至少一个组件同步数据,使目标机房的至少一个组件中的数据与源机房中的保持完全一致,避免数据遗漏;在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令,并行控制目标机房的至少一个组件允许数据写入和/或允许生产和消费,此后,目标机房的至少一个组件则具有了数据读写功能,和/或生产和消费功能,进而可对外提供该服务了。由此可见,本实施例方案,在控制不产生新增的服务数据的前提下,从源机房向目标机房进行数据同步,可避免数据遗漏,确保目标机房可提供与源机房一致的该服务;以及,通过联动控制命令并行控制源机房和目标机房中的至少一个组件提供的功能,进而实现服务的快速切换。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的多机房服务切换的控制方法的流程图;
图2示出了本发明另一个实施例提供的多机房服务切换的控制方法的流程图;
图3示出了一个具体示例中响应第一联动控制命令前至少一个组件的功能开关情况图;
图4示出了对应图3的示例响应第一联动控制命令后至少一个组件的功能开关情况图;
图5示出了对应图3的示例响应第二联动控制命令和第三联动控制命令后至少一个组件的功能开关情况;
图6示出了本发明实施例提供的多机房服务切换的控制的结构示意图;
图7示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图1示出了本发明实施例提供的多机房服务切换的控制方法的流程图。该方法通过切换控制平台控制服务依赖的至少一个组件的状态,完成将服务由源机房切换至目标机房,实现服务的快速切换。如图1所示,该方法包括以下步骤:
步骤S110:基于任一服务的由源机房至目标机房的跨机房切换请求,确定该服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令。
其中,该切换请求可由管理员发起,或者可在切换控制平台检测到满足切换条件后自动发起。以及,源机房即当前提供该服务的机房,目标机房是指完成服务切换后,提供该服务的机房,该目标机房可由指定而确定,或者可由切换控制平台将服务的需求与各个机房的配置进行匹配而确定。
具体地,当接收到切换请求后,切换控制平台确定该服务依赖的至少一个组件,例如,该服务依赖的存储数据库。需要在此说明的是,多个机房对等部署有各个服务的至少一个组件,即使该机房目前不提供某服务,也会部署该服务的组件,以便服务切换后使用。
然后,切换控制平台向源机房的该至少一个组件发送第一联动控制命令,以使源机房的该至少一个组件准备进行服务切换,其中,当至少一个组件为多个,则第一联动控制命令为同时对该多个组件进行控制的命令,以实现对多个组件的并行控制。
另外,需要在此说明的是,在本发明实施例中,仅以任一服务的切换进行说明,实际中,若存在多个服务具有切换需求,该多个服务中的各个服务均可按本发明实施例的方式进行切换,并且,该多个服务的切换过程可由切换控制平台并行控制来完成,提升了多个服务切换时的效率。
步骤S120:该源机房的至少一个组件根据该第一联动控制命令,进行禁止数据写入处理和/或停止消费处理。
在由该源机房提供该服务时,该源机房中部署的该服务依赖的至少一个组件提供读和写功能,和/或提供生产和消费功能,而其余机房(包括目标机房)中部署的该服务依赖的至少一个组件则不提供写功能,和/或不提供生产和消费功能。
源机房的该至少一个组件根据该第一联动控制命令,关闭数据写入功能和/或消费功能,以避免至少一个组件中新增服务数据。其中,源机房的该至少一个组件中,不同的组件,其提供的功能可能不同,例如,MySQL组件提供的是数据读写的功能,而Redis QueueProxy组件提供的是生产和消费功能。
步骤S130:该源机房的至少一个组件向该目标机房的至少一个组件同步数据;在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令。
实际中,源机房和其余机房之间对等部署的组件会保持数据同步,但是由于存在延迟,并不能确保数据时刻严格一致,而且由于是从源机房向其余机房进行同步,则源机房中的数据是最全的。
具体地,在源机房的至少一个组件关闭写入功能和/或消费功能后,从该源机房的至少一个组件向目标机房的至少一个组件进行数据同步,直至目标机房的至少一个组件中的数据同步至与源机房的至少一个组件的数据相同,则数据同步完成。然后,切换控制平台向目标机房的至少一个组件发送第二联动控制命令,以控制目标机房的至少一个组件做提供服务的准备。
步骤S140:该目标机房的至少一个组件根据该第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
目标机房的至少一个组件根据该第二联动控制命令,开放数据写入功能和/或消费功能,经上述处理后,则目标机房的至少一个组件同时具有了数据读写功能,和/或同时具有了生产和消费功能,进而可对外提供服务。
根据本实施例提供的多机房服务切换的控制方法,针对任一服务的切换请求,确定该服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令,并行控制源机房的至少一个组件禁止数据写入和/或停止消费处理,以准备进行数据同步,并避免同步过程中产生新的数据;源机房的至少一个组件在响应完第一联动控制命令后,向目标机房的至少一个组件同步数据,使目标机房的至少一个组件中的数据与源机房中的保持完全一致,避免数据遗漏;在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令,并行控制目标机房的至少一个组件允许数据写入和/或允许生产和消费,此后,目标机房的至少一个组件则具有了数据读写功能,和/或生产和消费功能,进而可对外提供该服务了。由此可见,本实施例方案,在控制不产生新增的服务数据的前提下,从源机房向目标机房进行数据同步,可避免数据遗漏,确保目标机房可提供与源机房一致的该服务;以及,通过联动控制命令并行控制源机房和目标机房中的至少一个组件提供的功能,进而实现服务的快速切换。
图2示出了本发明另一个实施例提供的多机房服务切换的控制方法的流程图。如图2所示,该方法包括以下步骤:
步骤S210:基于任一服务的由源机房至目标机房的跨机房切换请求,确定该服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令。
在本实施例中,主要以至少一个组件为存储组件进行说明,其包括但不限于以下至少一种组件:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件,其中,MySQL、MongoDB、Codis、Redis Queue Proxy以及RabbitMQProxy均为用于存储的结构;并且,MySQL(一种关系型数据库管理系统)组件、MongoDB(一种基于分布式文件存储的数据库)组件以及Codis(一个分布式Redis解决方案)使用DRC(DataReplicate Center,译为数据复制中心)在两个机房实现数据的实时同步;Redis Queue(redis队列)和RabbitMQ(一种消息队列服务)开发了对应的Proxy(代理)中间件实现两个机房的生产和消费。
具体地,发起方向切换控制平台发起将任一服务从源机房切换至目标机房的切换请求,切换控制平台在接收到该切换请求后,确定该服务依赖的至少一个组件,该至少一个组件在各个机房中均部署有。切换控制平台向源机房中的该至少一个组件发送第一联动控制命令,以控制源机房中的该至少一个组件准备进行服务切换。
步骤S220:该源机房的至少一个组件根据该第一联动控制命令,进行禁止数据写入处理和/或停止消费处理。
具体地,源机房中的该至少一个组件可同时被第一联动控制命令控制进行禁止数据写入处理和/或停止消费处理,其中,各个组件提供各自相应的功能,则在第一联动控制命令的控制下,各个组件会进行不同的处理。可选的,源机房的MySQL组件、MongoDB组件和/或Codis组件根据该第一联动控制命令进行禁止数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据该第一联动控制命令进行停止消费处理。在源机房中的该至少一个组件禁止数据写入和/或停止消费后,则源机房中的该至少一个组件不会再产生新的服务数据。
图3示出了一个具体示例中响应第一联动控制命令前至少一个组件的功能开关情况图。如图3所示,业务APP的某一服务依赖于组件1至组件5,该5个组件可依次为MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件,在响应前,源机房的组件1,组件2以及组件3可读可写,组件4和组件5可生产可消费,而目标机房的组件1,组件2以及组件3可读不可写,组件4和组件5不生产不消费,
图4示出了对应图3的示例响应第一联动控制命令后至少一个组件的功能开关情况图。相较于图3的不同之处在于,图4中响应第一联动控制命令后,源机房中的组件1,组件2以及组件3由可读可写变为可读不可写,组件4和组件5由可生产可消费变为可生产不可消费,则源机房中的该5个组件不会产生新的存储数据。
步骤S230:该源机房的至少一个组件向该目标机房的至少一个组件同步数据;在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令。
在源机房中的至少一个组件不再产生新的服务数据时,源机房中的该至少一个组件向目标机房的该至少一个组件同步数据,将目标机房的至少一个组件中因延迟而未同步完全的数据在此时完成同步,使源机房和目标机房中该至少一个组件中的数据保持完全一致。以图4举例来说,在该图4所示的状态下,源机房中的组件1至组件5分别向目标机房中对应的组件1至组件5同步数据。以及,在完成数据同步后,向目标机房的至少一个组件发送第二联动控制命令,以控制目标机房的至少一个组件进行提供该服务的准备。
在本发明的一些可选的实施例中,在开始数据同步后(也即源机房的至少一个组件根据该第一联动控制命令,进行禁止数据写入处理和/或停止消费处理后),通过如下方式来检测源机房向目标机房的数据同步是否完成:向该源机房的至少一个组件中写入标记数据,具体作为最新一条数据写入到源机房的至少一个组件中的各个机房,该标记数据仅起到标记作用,而不作为服务数据使用;在该目标机房的至少一个组件中查询该标记数据,若查询到该标记数据,则确定数据同步完成,其中,在目标机房的至少一个组件中查询到最新写入的标记数据,则表明该标记数据之前的存储数据均已被同步完成,然后则可触发切换控制平台发送第二联动控制命令。举例来说,至少一个组件包括MySQL组件、MongoDB组件以及Codis,则通过同时向源机房的MySQL组件、MongoDB组件以及Codis组件分别写入一条标记数据,然后在目标机房中检查MySQL组件、MongoDB组件以及Codis组件是否能查到这条数据,如果可以,说明目前两个机房数据通过已同步达到一致。这种可选的实施方式,可以通过写入标记数据来准确的检测数据同步是否完成,进而可以在数据同步完成后及时的触发发送第二联动控制命令,实现前后流程的无缝衔接,有利于加快整个切换的流程。
在本发明的另一些可选的实施例,在数据同步完成后,切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。对于部分目标组件,其本身并不支持双向同步,在数据同步完成后,通过修改同步方向来实现目标机房向源机房的数据同步,即源机房中目标组件的同步方向由复制出去切换为同步进来,而目标机房中目标组件的同步方向由同步进来切换为复制出去,以使目标机房中新产生的服务数据可被同步至源机房中,另外,若存在除源机房和目标机房之外的其它机房,该其它机房中目标组件的同步方向依然保持同步进来不变。具体地,目标组件可包括MySQL组件和/或MongoDB组件,通过切换MySQL组件和/或MongoDB组件的DRC的同步方向,实现MySQL组件和/或MongoDB组件在源机房和目标机房之间的同步方向的切换。其中,MySQL组件、MongoDB组件以及Codis组件均通过DRC来实现数据的实时同步,而其中MySQL组件以及MongoDB组件不支持双向同步,则需修改DRC的同步方向,反之,Codis组件本身支持双方同步,则无需修改。上述可选的实施方式,在数据同步完成后,通过修改部分目标组件的同步方向,可确保后续目标机房在提供该服务的过程中新产生的服务数据可被及时的同步到源机房中。
步骤S240:该目标机房的至少一个组件根据该第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理。
具体地,目标机房中的该至少一个组件可同时被第二联动控制命令控制进行允许数据写入处理和/或允许消费处理,其中,各个组件提供各自相应的功能,则在第一联动控制命令的控制下,各个组件会进行不同的处理。可选的,目标机房的MySQL组件、MongoDB组件和/或Codis组件根据该第二联动控制命令进行允许数据写入处理;和/或,Redis QueueProxy组件和/或RabbitMQ Proxy组件根据该第二联动控制命令进行允许消费处理。在目标机房中的该至少一个组件允许数据写入和/或允许生产和消费后,则与响应第一联动控制命令前源机房的至少一个组件的功能开关状态相同,此时目标机房的至少一个组件做好了提供该服务的准备。
并且,在完成数据同步后,切换控制平台还向源机房的至少一个组件发送第三联动控制命令,以控制源机房的至少一个组件彻底停止该服务。源机房的至少一个组件根据该第三联动控制命令,进行停止生产处理,此后源机房中的该至少一个组件不再具有数据写功能和/或生产和消费功能,即与响应第一联动控制命令之前目标机房的至少一个组件的功能开关状态相同。
图5示出了对应图3的示例响应第二联动控制命令和第三联动控制命令后至少一个组件的功能开关情况。相较于图4中的不同之处在于,图5中响应第二联动控制命令后,目标机房的组件1,组件2以及组件3由不可写变为可读可写,组件4和组件5由不生产不消费变为可生产可消费;以及,响应第三联动控制命令后,源机房的组件4和组件5由可生产不消费变为不生产不消费。
经过上述步骤S210至步骤S240,完成了该服务依赖的存储组件在源机房和目标机房间的功能转换,以及完成了数据同步,即完成了存储层的切换。
步骤S250:向该切换请求的发起方发送流量切换通知,以指示该发起方将针对该服务的流量迁移到目标机房,完成服务切换。
切换控制平台向切换请求的发起方发送流量切换通知,发起方将该服务的流量由源机房迁移至目标机房,此时则可通过该目标机房来承载该服务的流量,完成了服务的切换。
根据本实施例提供的多机房服务切换的控制方法,针对任一服务的切换请求,确定该服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令,并行控制源机房的至少一个组件禁止数据写入和/或停止消费处理,避免同步过程中产生新的数据,以准备进行数据同步;源机房的至少一个组件在响应完第一联动控制命令后,向目标机房的至少一个组件同步数据,使目标机房的至少一个组件中的数据与源机房中的保持完全一致,避免数据遗漏;在同步过程中,通过写入标记数据可检测出数据同步是否完成,以及时触发切换控制平台来发送第二联动控制命令,实现前后流程的无缝衔接,有利于加快整个切换的流程;在同步完成后,切换目标组件的同步方向,以使目标机房中新产生的服务数据可被同步至源机房中;以及,在同步完成后,向目标机房的至少一个组件发送第二联动控制命令,并行控制目标机房的至少一个组件允许数据写入和/或允许生产和消费,此时目标机房的至少一个组件做好了提供服务的准备,完成了存储层的切换;然后,进行流量迁移,以使目标机房来承载服务的流量,提供服务。由此可见,本实施例方案,通过切换控制平台来并行控制控制源机房和目标机房中服务依赖的至少一个组件,高效完成存储层的切换,而且可确保数据不丢失。
图6示出了本发明实施例提供的多机房服务切换的控制的结构示意图。如图6所示,该系统包括:切换控制平台610以及至少两个机房(其中包含源机房620和目标机房630),所述至少两个机房对等部署有各种服务依赖的多个组件;其中,
所述切换控制平台610适于:基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;以及,在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
源机房的至少一个目标组件621适于:根据所述第一联动控制命令,进行禁止写入处理和/或停止消费处理,以及,向所述目标机房的至少一个组件同步数据;
目标机房的至少一个目标组件631适于:根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
在一种可选的方式中,所述切换控制平台还适于:向源机房的至少一个组件发送第三联动控制命令;所述源机房的至少一个组件根据所述第三联动控制命令,进行停止生产处理。
在一种可选的方式中,所述至少一个组件包括以下至少一种:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件。
其中,所述源机房的至少一个目标组件进一步适于:源机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第一联动控制命令进行禁止数据写入处理;和/或,RedisQueue Proxy组件和/或RabbitMQ Proxy组件根据所述第一联动控制命令进行停止消费处理;
所述目标机房的至少一个组件进一步适于:目标机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第二联动控制命令进行允许数据写入处理;和/或,Redis QueueProxy组件和/或RabbitMQ Proxy组件根据所述第二联动控制命令进行允许生产和消费处理。
在一种可选的方式中,所述切换控制平台还适于:
向所述源机房的至少一个组件中写入标记数据;
在所述目标机房的至少一个组件中查询所述标记数据,若查询到所述标记数据,则确定数据同步完成。
在一种可选的方式中,所述切换控制平台还适于:
切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。
在一种可选的方式中,所述目标组件包括MySQL组件和/或MongoDB组件;所述切换控制平台还适于:
切换MySQL组件和/或MongoDB组件的数据复制中心的同步方向。
在一种可选的方式中,所述切换控制平台还适于:
向所述切换请求的发起方发送流量切换通知,以指示所述发起方将针对所述服务的流量迁移到目标机房。
本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的多机房服务切换的控制方法。
可执行指令具体可以用于使得处理器执行以下操作:
基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;
所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理;
所述源机房的至少一个组件向所述目标机房的至少一个组件同步数据;
在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
在一种可选的方式中,所述可执行指令进一步使所述处理器执行如下操作:
向源机房的至少一个组件发送第三联动控制命令;所述源机房的至少一个组件根据所述第三联动控制命令,进行停止生产处理。
在一种可选的方式中,所述至少一个组件包括以下至少一种:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件。
在一种可选的方式中,所述可执行指令进一步使所述处理器执行如下操作:
源机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第一联动控制命令进行禁止数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第一联动控制命令进行停止消费处理;
目标机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第二联动控制命令进行允许数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第二联动控制命令进行允许生产和消费处理。
在一种可选的方式中,所述可执行指令进一步使所述处理器执行如下操作:
向所述源机房的至少一个组件中写入标记数据;
在所述目标机房的至少一个组件中查询所述标记数据,若查询到所述标记数据,则确定数据同步完成。
在一种可选的方式中,所述可执行指令进一步使所述处理器执行如下操作:
切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。
在一种可选的方式中,所述目标组件包括MySQL组件和/或MongoDB组件;所述可执行指令进一步使所述处理器执行如下操作:
切换MySQL组件和/或MongoDB组件的数据复制中心的同步方向。
在一种可选的方式中,所述可执行指令进一步使所述处理器执行如下操作:
向所述切换请求的发起方发送流量切换通知,以指示所述发起方将针对所述服务的流量迁移到目标机房。
图7示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图7所示,该计算设备可以包括:处理器(processor)702、通信接口(Communications Interface)704、存储器(memory)706、以及通信总线708。
其中:处理器702、通信接口704、以及存储器706通过通信总线708完成相互间的通信。通信接口704,用于与其它设备比如客户端或其它服务器等的网元通信。处理器702,用于执行程序710,具体可以执行上述用于计算设备的多机房服务切换的控制方法实施例中的相关步骤。
具体地,程序710可以包括程序代码,该程序代码包括计算机操作指令。
处理器702可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器706,用于存放程序710。存储器706可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序710具体可以用于使得处理器702执行以下操作:
基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;
所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理;
所述源机房的至少一个组件向所述目标机房的至少一个组件同步数据;
在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
在一种可选的方式中,所述程序710进一步使所述处理器702执行以下操作:
向源机房的至少一个组件发送第三联动控制命令;所述源机房的至少一个组件根据所述第三联动控制命令,进行停止生产处理。
在一种可选的方式中,所述至少一个组件包括以下至少一种:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件。
在一种可选的方式中,所述程序710进一步使所述处理器702执行以下操作:
源机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第一联动控制命令进行禁止数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第一联动控制命令进行停止消费处理;
目标机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第二联动控制命令进行允许数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第二联动控制命令进行允许生产和消费处理。
在一种可选的方式中,所述程序710进一步使所述处理器702执行以下操作:
向所述源机房的至少一个组件中写入标记数据;
在所述目标机房的至少一个组件中查询所述标记数据,若查询到所述标记数据,则确定数据同步完成。
在一种可选的方式中,所述程序710进一步使所述处理器702执行以下操作:
切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。
在一种可选的方式中,所述目标组件包括MySQL组件和/或MongoDB组件;所述程序710进一步使所述处理器702执行以下操作:
切换MySQL组件和/或MongoDB组件的数据复制中心的同步方向。
在一种可选的方式中,所述程序710进一步使所述处理器702执行以下操作:
向所述切换请求的发起方发送流量切换通知,以指示所述发起方将针对所述服务的流量迁移到目标机房。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
本发明公开了:A1.一种多机房服务切换的控制方法,包括:
基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;
所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理;
所述源机房的至少一个组件向所述目标机房的至少一个组件同步数据;
在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
A2.根据A1所述的方法,其中,在所述数据同步完成后,所述方法还包括:
向源机房的至少一个组件发送第三联动控制命令;所述源机房的至少一个组件根据所述第三联动控制命令,进行停止生产处理。
A3.根据A1或A2所述的方法,其中,所述至少一个组件包括以下至少一种:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件。
A4.根据A3所述的方法,其中,所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理进一步包括:
源机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第一联动控制命令进行禁止数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第一联动控制命令进行停止消费处理;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理进一步包括:
目标机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第二联动控制命令进行允许数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第二联动控制命令进行允许生产和消费处理。
A5.根据A1-A4任一项所述的方法,其中,所述方法还包括:
向所述源机房的至少一个组件中写入标记数据;
在所述目标机房的至少一个组件中查询所述标记数据,若查询到所述标记数据,则确定数据同步完成。
A6.根据A1-A5任一项所述的方法,其中,在数据同步完成后,所述方法还包括:切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。
A7.根据A6所述的方法,其中,所述目标组件包括MySQL组件和/或MongoDB组件;所述切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向进一步包括:
切换MySQL组件和/或MongoDB组件的数据复制中心的同步方向。
A8.根据A1-A7任一项所述的方法,其中,在所述进行允许数据写入处理和/或允许消费处理之后,所述方法还包括:
向所述切换请求的发起方发送流量切换通知,以指示所述发起方将针对所述服务的流量迁移到目标机房。
本发明还公开了:B9.一种多机房服务切换的控制系统,包括:切换控制平台以及至少两个机房,所述至少两个机房对等部署有各种服务依赖的多个组件;其中,
所述切换控制平台适于:基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;以及,在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
源机房的至少一个目标组件适于:根据所述第一联动控制命令,进行禁止写入处理和/或停止消费处理,以及,向所述目标机房的至少一个组件同步数据;
目标机房的至少一个目标组件适于:根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
B10.根据B9所述的系统,其中,所述切换控制平台还适于:向源机房的至少一个组件发送第三联动控制命令;所述源机房的至少一个组件根据所述第三联动控制命令,进行停止生产处理。
B11.根据B9或B10所述的系统,其中,所述至少一个组件包括以下至少一种:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件。
B12.根据B11所述的系统,其中,所述源机房的至少一个目标组件进一步适于:源机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第一联动控制命令进行禁止数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第一联动控制命令进行停止消费处理;
所述目标机房的至少一个组件进一步适于:目标机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第二联动控制命令进行允许数据写入处理;和/或,Redis QueueProxy组件和/或RabbitMQ Proxy组件根据所述第二联动控制命令进行允许生产和消费处理。
B13.根据B9-B12任一项所述的系统,其中,所述切换控制平台还适于:
向所述源机房的至少一个组件中写入标记数据;
在所述目标机房的至少一个组件中查询所述标记数据,若查询到所述标记数据,则确定数据同步完成。
B14.根据B9-B13任一项所述的系统,其中,所述切换控制平台还适于:
切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。
B15.根据B14所述的系统,其中,所述目标组件包括MySQL组件和/或MongoDB组件;所述切换控制平台还适于:
切换MySQL组件和/或MongoDB组件的数据复制中心的同步方向。
B16.根据B9-B15任一项所述的系统,其中,所述切换控制平台还适于:
向所述切换请求的发起方发送流量切换通知,以指示所述发起方将针对所述服务的流量迁移到目标机房。
本发明还公开了:C17.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如A1-A8任一项所述的多机房服务切换的控制方法对应的操作。
本发明还公开了:D18.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行A1-A8任一项所述的多机房服务切换的控制方法对应的操作。

Claims (10)

1.一种多机房服务切换的控制方法,包括:
基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;
所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理;
所述源机房的至少一个组件向所述目标机房的至少一个组件同步数据;
在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
2.根据权利要求1所述的方法,其中,在所述数据同步完成后,所述方法还包括:
向源机房的至少一个组件发送第三联动控制命令;所述源机房的至少一个组件根据所述第三联动控制命令,进行停止生产处理。
3.根据权利要求1或2所述的方法,其中,所述至少一个组件包括以下至少一种:MySQL组件、MongoDB组件、Codis组件、Redis Queue Proxy组件以及RabbitMQ Proxy组件。
4.根据权利要求3所述的方法,其中,所述源机房的至少一个组件根据所述第一联动控制命令,进行禁止数据写入处理和/或停止消费处理进一步包括:
源机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第一联动控制命令进行禁止数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第一联动控制命令进行停止消费处理;
所述目标机房的至少一个组件根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理进一步包括:
目标机房的MySQL组件、MongoDB组件和/或Codis组件根据所述第二联动控制命令进行允许数据写入处理;和/或,Redis Queue Proxy组件和/或RabbitMQ Proxy组件根据所述第二联动控制命令进行允许生产和消费处理。
5.根据权利要求1-4任一项所述的方法,其中,所述方法还包括:
向所述源机房的至少一个组件中写入标记数据;
在所述目标机房的至少一个组件中查询所述标记数据,若查询到所述标记数据,则确定数据同步完成。
6.根据权利要求1-5任一项所述的方法,其中,在数据同步完成后,所述方法还包括:切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向。
7.根据权利要求6所述的方法,其中,所述目标组件包括MySQL组件和/或MongoDB组件;所述切换至少一个组件中的目标组件在源机房和目标机房之间的同步方向进一步包括:
切换MySQL组件和/或MongoDB组件的数据复制中心的同步方向。
8.一种多机房服务切换的控制系统,包括:切换控制平台以及至少两个机房,所述至少两个机房对等部署有各种服务依赖的多个组件;其中,
所述切换控制平台适于:基于任一服务的由源机房至目标机房的跨机房切换请求,确定所述服务依赖的至少一个组件;向源机房的至少一个组件发送第一联动控制命令;以及,在数据同步完成后,向目标机房的至少一个组件发送第二联动控制命令;
源机房的至少一个目标组件适于:根据所述第一联动控制命令,进行禁止写入处理和/或停止消费处理,以及,向所述目标机房的至少一个组件同步数据;
目标机房的至少一个目标组件适于:根据所述第二联动控制命令,进行允许数据写入处理和/或允许生产和消费处理,完成服务切换。
9.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7任一项所述的多机房服务切换的控制方法对应的操作。
10.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行权利要求1-7任一项所述的多机房服务切换的控制方法对应的操作。
CN202010980403.2A 2020-09-17 2020-09-17 多机房服务切换的控制方法、系统、计算设备及存储介质 Pending CN112131056A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010980403.2A CN112131056A (zh) 2020-09-17 2020-09-17 多机房服务切换的控制方法、系统、计算设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010980403.2A CN112131056A (zh) 2020-09-17 2020-09-17 多机房服务切换的控制方法、系统、计算设备及存储介质

Publications (1)

Publication Number Publication Date
CN112131056A true CN112131056A (zh) 2020-12-25

Family

ID=73846025

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010980403.2A Pending CN112131056A (zh) 2020-09-17 2020-09-17 多机房服务切换的控制方法、系统、计算设备及存储介质

Country Status (1)

Country Link
CN (1) CN112131056A (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110334077A (zh) * 2019-06-11 2019-10-15 无线生活(杭州)信息科技有限公司 数据库跨机房迁移的方法及装置
CN110673941A (zh) * 2019-09-27 2020-01-10 掌阅科技股份有限公司 多机房中微服务的迁移方法、电子设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110334077A (zh) * 2019-06-11 2019-10-15 无线生活(杭州)信息科技有限公司 数据库跨机房迁移的方法及装置
CN110673941A (zh) * 2019-09-27 2020-01-10 掌阅科技股份有限公司 多机房中微服务的迁移方法、电子设备及存储介质

Similar Documents

Publication Publication Date Title
WO2019127916A1 (zh) 基于分布式一致性协议实现的数据读写方法及装置
CN109491776B (zh) 任务编排方法和系统
CN111314479B (zh) 一种数据处理方法和设备
JP6859340B2 (ja) グローバル情報を取得、処理および更新するための装置、システムおよび方法
CN110673941B (zh) 多机房中微服务的迁移方法、电子设备及存储介质
WO2019127915A1 (zh) 基于分布式一致性协议实现的数据读取方法及装置
US10496676B2 (en) Synchronization cache seeding
CN108123851B (zh) 分布式系统中主从节点同步链路的存活检测方法及装置
CN109886693B (zh) 区块链系统的共识实现方法、装置、设备和介质
CN110647511A (zh) 数据同步方法、计算设备及计算机存储介质
CN102932409B (zh) 一种虚拟机在线迁移的方法和系统
JP2019502202A (ja) 分散記憶システムをアップグレードするための方法および装置
EP4095678A1 (en) Method and apparatus of deploying a cluster, device and storage medium
US11445013B2 (en) Method for changing member in distributed system and distributed system
JP2018515850A (ja) データ・コピー方法及びデバイス
CN111880956A (zh) 一种数据同步方法和装置
CN112052230A (zh) 多机房数据同步方法、计算设备及存储介质
US8031637B2 (en) Ineligible group member status
CN114124948A (zh) 一种云端组件高可用的方法、装置、设备及可读介质
CN112199240B (zh) 一种节点故障时进行节点切换的方法及相关设备
CN113726581B (zh) 一种恢复网络设备的出厂配置的方法、装置及网络设备
CN112513832A (zh) 一种数据的存储方法及设备
CN111049886A (zh) 多区域sdn控制器数据同步方法、服务器及系统
CN112015595B (zh) 主从数据库的切换方法、计算设备及存储介质
CN112306380A (zh) 一种存储管理方法、装置以及计算机存储介质

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