CN108376154A - 系统基表同步方法、装置、计算机设备和存储介质 - Google Patents

系统基表同步方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN108376154A
CN108376154A CN201810124332.9A CN201810124332A CN108376154A CN 108376154 A CN108376154 A CN 108376154A CN 201810124332 A CN201810124332 A CN 201810124332A CN 108376154 A CN108376154 A CN 108376154A
Authority
CN
China
Prior art keywords
base table
system base
goal systems
message queue
data
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
CN201810124332.9A
Other languages
English (en)
Other versions
CN108376154B (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.)
Ping An Puhui Enterprise Management Co Ltd
Original Assignee
Ping An Puhui Enterprise Management 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 Ping An Puhui Enterprise Management Co Ltd filed Critical Ping An Puhui Enterprise Management Co Ltd
Priority to CN201810124332.9A priority Critical patent/CN108376154B/zh
Publication of CN108376154A publication Critical patent/CN108376154A/zh
Application granted granted Critical
Publication of CN108376154B publication Critical patent/CN108376154B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种系统基表同步方法、系统、计算机设备和存储介质。所述方法包括:接收多个目标系统发送的系统基表同步请求;系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据系统标识对系统密钥进行验证;当系统密钥验证通过时,获取与系统标识对应的系统基表的基表数据;将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应;系统基表同步响应用于指示相应的目标系统从分布式消息队列中获取基表数据。采用本方法能够提高系统基表同步效率。

Description

系统基表同步方法、装置、计算机设备和存储介质
技术领域
本申请涉及数据库管理技术领域,特别是涉及一种系统基表同步方法、装置、计算机设备和存储介质。
背景技术
系统基表是指系统数据库中用于存储特定基表数据的实体表,实体表是各种数据管理对象所对应的表,也称基础表、数据表。通常每个系统都会有自己的一套系统基表,因此每个系统都需要相关人员对基表数据进行维护。当系统需要对接时,需要同步不同系统中的系统基表。
然而,虽然不同系统中会存在相同的系统基表,但是由于在每个系统中基表数据的维护顺序、方式不同,在同一时刻不同系统中相同系统基表中的基表数据往往会存在差异,此时系统基表同步会导致基表数据错乱。比如说不同系统中针对同一城市的编码不同,会导致系统对接失败。因此,系统基表同步的效率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高系统基表同步效率的系统基表同步方法、装置、计算机设备和存储介质。
一种系统基表同步方法,所述方法包括:接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据所述系统标识对所述系统密钥进行验证;当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。
在其中一个实施例中,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据所述第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。
在其中一个实施例中,所述根据所述系统标识对所述系统密钥进行验证,包括:查找所述数据库中与所述系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与所述系统基表同步请求中包含的系统密钥一致时,则判定所述系统密钥验证通过。
在其中一个实施例中,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;所述系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;所述通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应,包括:通过所述分布式消息队列向与所述系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。
在其中一个实施例中,所述方法还包括:当与所述系统标识对应的系统基表中存在基表更新数据时,则将所述基表更新数据打包成多个JSON子数据包;通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中。
在其中一个实施例中,所述通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中,包括:将所述多个JSON子数据包和相应系统基表的系统基表标识发送至所述分布式消息队列中;统计所有JSON子数据包的第一数据包总数,并统计所述分布式消息队列成功接收的JSON子数据包的第二数据包总数;当所述第一数据包总数与所述第二数据包总数相等时,向与所述系统基表标识相应的目标系统发送基表更新响应;所述基表更新响应用于指示相应的目标系统从所述分布式消息队列中获取并解析所述多个JSON子数据包。
在其中一个实施例中,在所述统计所有JSON子数据包的第一数据包总数,并统计所述分布式消息队列成功接收的JSON子数据包的第二数据包总数之后,还包括:当所述第一数据包总数与所述第二数据包总数不相等时,删除所述分布式消息队列中的JSON子数据包,并返回将所述多个JSON子数据包和相应系统基表的系统基表标识发送至所述分布式消息队列中的步骤,直至所述第一数据包总数与所述第二数据包总数相等。
一种系统基表同步装置,所述装置包括:系统基表同步请求接收模块,用于接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;系统密钥验证模块,用于根据所述系统标识对所述系统密钥进行验证;基表数据获取模块,用于当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;基表数据发送模块,用于将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;系统基表同步响应发送模块,用于通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时实现上述各个实施例中所述的系统基表同步方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述各个实施例中所述的系统基表同步方法的步骤。
上述系统基表同步方法、装置、计算机设备和存储介质,在接收了多个目标系统发送的系统基表同步请求,并根据系统基表同步请求中包含的系统标识对系统密钥验证通过之后,根据目标系统和系统基表的订阅关系,获取对应系统基表的基表数据。将基表数据发送至分布式消息队列中,并向订阅了该系统基表的目标系统发送系统基表同步响应,使得目标系统能从分布式消息队列中获取订阅的系统基表的基表数据,实现系统基表的同步。通过一个统一的基表服务器对多个目标系统中的系统基表进行管理,通过分布式消息队列根据目标系统和系统基表的订阅关系,下发一次基表数据实现多个目标系统都能获得该基表数据,节约了多个目标系统系统基表同步的时间,提高了系统基表同步的效率。
附图说明
图1为一个实施例中系统基表同步方法的应用场景图;
图2为一个实施例中系统基表同步方法的流程示意图;
图3为一个实施例中分布式消息队列的发布订阅模型的示意图;
图4为一个实施例中系统基表同步装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语的限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一数据包总数称为第二数据包总数,且类似地,可将第二数据包总数称为第一数据包总数。第一数据包总数和第二数据包总数两者都是数据包总数,但其不是同一数据包总数。
本申请提供的系统基表同步方法,可以应用于如图1所示的应用环境中。其中,系统服务器集群102通过网络与基表服务器104通过网络进行通信。其中,系统服务器集群102可包括第一系统服务器102a、第二系统服务器102b和第三系统服务器102c等多个系统服务器,且每个系统服务器上都可部署相应的一个或多个目标系统。基表服务器104可接收多个目标系统通过系统服务器集群102发送的包含系统标识和系统密钥系统基表同步请求。基表服务器104在根据系统标识对系统密钥进行验证之后,获取相应系统标识对应的系统基表的基表数据。基表服务器104可将获取的基表数据及相应系统基表的系统基表标识发送至分布式消息队列中。系统服务器集群102可与分布式消息队列建立长连接,实时监控分布式消息队列中是否包含相应目标系统所订阅系统基表的基表数据。当存在时,基表服务器104可通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应。系统服务器集群102中的系统服务器所对应的目标系统在接收到系统基表同步响应之后,可通过相应的系统服务器从分布式消息队列中获取基表数据。
在一个实施例中,如图2所示,提供了一种系统基表同步方法,以该方法应用于图1中的基表服务器104为例进行说明,包括以下步骤:
步骤202,接收多个目标系统发送的系统基表同步请求;系统基表同步请求中包含相应目标系统的系统标识和系统密钥。
目标系统是指需要进行系统基表同步的系统。其中,系统基表是指用于存储特定基表数据的实体表,且每个目标系统中都包含一个或多个需要进行系统基表同步的系统基表,系统基表包括但不限于字段定义表、配置信息表、个人信息表、企业信息表、行业等级表、城市等级表等其中一种或多种。系统基表同步请求是指目标系统用于接入基表服务器,并通过基表服务器实现系统基表同步的请求。系统标识是指用于将一个目标系统区分于其他目标系统的标识,比如目标系统的英文名、英文名简称、中文名简称等。系统密钥是指目标系统用于证明目标系统身份的密钥,且每个目标系统的系统密钥可为全局唯一的。系统密钥可为基表服务器为每个目标系统分配的令牌号TokenID。系统密钥可由英文字母、标点符号及阿拉伯数字等其中一种或多种组成。
在一个实施例中,基表服务器为相应目标系统分配的在接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。
在系统基表同步之前,目标系统需要接入基表服务器,比如通过系统标识在基表服务器中进行注册,只有注册之后的目标系统才能通过基表服务器实现系统基表同步。第一基表订阅请求是指目标系统发送的用于在基表服务器中注册的请求。验证密钥是指存储于基表服务器数据库中,用于验证系统密钥的密钥。数据库中每个验证密钥都有对应的唯一系统标识。
步骤204,根据系统标识对系统密钥进行验证。
每个系统标识都可对应有全局唯一的系统密钥,因此可根据系统标识对系统密钥进行验证。可以在基表服务器的数据库中存储用于验证系统密钥的验证密钥,且预设系统标识和验证密钥的映射关系。在接收到系统标识之后,可根据映射关系查找与系统标识相应的验证密钥,根据查找到的验证密钥对系统密钥进行验证。
在一个实施例中,根据系统标识对系统密钥进行验证,包括:查找数据库中与系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与系统基表同步请求中包含的系统密钥一致时,则判定系统密钥验证通过。
在一个实施例中,可通过预设的加密算法对系统标识进行加密,将得到的密文作为系统密钥。比如说可通过MD5(Message Digest algorithm 5,信息摘要算法)、SHA(Secure Hash Algorithm,安全散列算法)、HMAC(Hash Message Authentication Code,散列消息鉴别码)等单项加密算法等对系统标识进行加密处理,将系统标识转换为固定长度的字符串,并将得到的字符串作为系统密钥。通过将对系统标识加密得到的密文作为系统密钥,可以保证系统密钥的全局唯一性。在接收到系统标识和系统密钥之后,还可对接收到的系统标识通过预设的加密算法进行加密处理,判断得到的密文是否与接收到的系统密钥一致。若是,则判定密钥验证通过;若否,则判定密钥验证不通过。
步骤206,当系统密钥验证通过时,获取与系统标识对应的系统基表的基表数据。
基表数据是指系统基表中针对数据管理对象的具体数据。系统基表中可包含表名、列名、列类型、列内容、索引名等字段。每个字段下可对应一个或多个具体的字段值,基表数据即由具体的字段值所构成。比如说,针对数据管理对象“行业”来说,基表数据可为行业名、行业代码、上级行业代码及行业描述等。每个具体行业的相关字段值可构成一条基表数据,系统基表中所有行业的相关字段值则构成系统基表的基表数据。
在基表服务器中,还预存着系统标识和系统基表的映射关系。当系统密钥验证通过时,可根据系统标识和系统基表的映射关系查找与系统标识对应的基表,并获取所查找到的系统基表中的基表数据。
步骤208,将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中。
分布式消息队列是指可以容纳大量数据且可以并行处理数据的消息队列。其中,消息队列是在消息的传输过程中保存消息的容器。分布式消息队列分为两大类,Broker(中间件)类和Brokerless(非中间件)类。其中,Broker类的分布式消息队列,是指有独立部署进行的分布式服务,即发送者把消息发布到Broker进程,再由Broker进程推或者是拉(Push或Pull)给订阅者。Brokerless类的消息队列,主要采用API(Application ProgrammingInterface,应用程序编程接口)的方式,编译到应用程序中,在应用程序间进行点对点的通信。
在一个实施例中,可针对分布式消息队列预置多种属性。比如说,消息消费模式(比如点对点模式、广播模式和订阅模式等)、消息消费方式(比如push推动模式,pull拉动模式)、消息加密方式(比如消息可采用二进制方式传输和存储)、单条消息大小限制(比如32K、64K)、消息投递效率(比如毫秒级至5秒)、消息保存周期(比如保存周期为5天,5天之后无论消息是否被消费,消息都会被删除)、还可以预设针对消息发送、接收的功能开关(比如在分布式消息队列异常时,关闭掉消息功能)等。
步骤210,通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应;系统基表同步响应用于指示相应的目标系统从分布式消息队列中获取基表数据。
系统基表同步响应是指基表服务器针对基表同步请求之后反馈至相应目标系统的响应,用于指示相应的目标系统从分布式消息队列中获取订阅的基表数据。系统服务器集群中每个系统服务器可与分布式消息队列建立长连接,实时监控分布式消息队列中是否包含相应目标系统所订阅系统基表的基表数据。当分布式消息队列中包含与任意一个系统服务器中的目标系统具有订阅关系的基表数据时,该目标系统所对应的系统服务器会接收到基表服务器通过分布式消息队列发送系统基表同步响应。
图3为分布式消息队列的发布订阅模型的示意图。基表服务器可作为发布者302(Publisher)将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列304中,使得订阅者(Subscriber)可以获取到分布式消息队列中相应的消息。其中,订阅者可多个,比如订阅者306a、订阅者306b及订阅者306c等。举例来说,当发布者302发布了三个系统基表对应的消息,分别为消息1、消息2、和消息3(Msg1、2、3)时,订阅者可根据消息中包含的系统基表标识从分布式消息队列304中获取相应的消息,比如,订阅者306a可从分布式消息队列304中获取消息1(Msg1),订阅者306b可从分布式消息队列304中获取消息2(Msg2),订阅者306c可从分布式消息队列304中获取消息3(Msg3)。
上述系统基表同步方法中,在接收了多个目标系统发送的系统基表同步请求,并根据系统基表同步请求中包含的系统标识对系统密钥验证通过之后,根据目标系统和系统基表的订阅关系,获取对应系统基表的基表数据。将基表数据发送至分布式消息队列中,并向订阅了该系统基表的目标系统发送系统基表同步响应,使得目标系统能从分布式消息队列中获取订阅的系统基表的基表数据,实现系统基表的同步。通过一个统一的基表服务器对多个目标系统中的系统基表进行管理,通过分布式消息队列根据目标系统和系统基表的订阅关系,下发一次基表数据实现多个目标系统都能获得该基表数据,节约了多个目标系统系统基表同步的时间,提高了系统基表同步的效率。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,在接收多个目标系统发送的系统基表同步请求之前,还包括:接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应,包括:通过分布式消息队列向与系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。
第二基表订阅请求是指目标系统发送的用于在基表服务器中订阅系统基表的请求。每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合。其中,系统标识和系统基表标识集合体现了目标系统和系统基表之间的订阅关系。一个目标系统可以订阅一个或多个系统基表,相应地,一个系统基表也可被一个或多个目标系统订阅。将系统标识和系统基表标识集合之间的映射关系记录至分布式消息队列,使得分布式消息队列在接收到基表数据之后,可根据相应系统基表标识所属的系统基表标识集合查找对应的系统标识,向系统标识对应的目标系统发送系统基表同步响应。比如说,当分布式消息队列为Broker类,则分布式消息队列中包含消息交换机(Exchange,用于指定消息按什么规则,路由到哪个队列)、消息列队列载体(Queue,每个消息都会被投入到一个或多个队列)及绑定(Binding,用于把Exchange和Queue按照路由规则绑定起来),当接收到包含基表数据及相应系统基表标识的消息之后,消息交换机可根据绑定的规则,即系统标识和系统基表集合之间的映射关系,将消息路由到相应的消息队列载体,目标系统可在消息队列载体中获取到基表数据。
在一个实施例中,当与系统标识对应的系统基表中存在基表更新数据时,则将基表更新数据打包成多个JSON子数据包;通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中。
基表更新数据是指需要在系统中进行增加、删除、更改等的基表数据。JSON(JavaScript Object Notation,JS对象标记,是一种轻量级的数据交换格式)子数据包是指通过JSON格式将基表更新数据转换生成的数据包。比如说,一共有100000行需要进行增加、删除、更改等的基表数据,可按照每1000行基表更新数据打包成一个JSON子数据包,则会得到100个JSON子数据包。目标系统从分布式消息队列中获得JSON子数据包之后,可将JSON子数据包解析得到基表更新数据,并将基表更新数据同步至目标系统的系统基表中。通过将基表更新数据打包成多个JSON子数据包,从而能够在下发出现异常的时候,直接将出现异常的JSON子数据包重新下发,而无需全部重新下发,节约了基表更新数据下发的时间,从而提高了系统基表同步的效率。
JSON子数据包可包含多个字段,举例来说:"tableSet":比如"NEW_INDUSTRY",代表更新NEW_INDUSTRY表集合;"version":比如3,代表此次100个数据包的整体更新,是SSP_CITY表的第3个更新版本;"table":比如"NEW_INDUSTRY",代表具体更新的基表表名;"column":代表具体更新的基表列名;"ACTION",代表这1行数据,是C(新增),U(更新),D(删除);"ID"、"CREATED_BY"、"CREATED_DATE"、"UPDATED_BY"、"UPDATED_DATE",代表具体更新的基表的字段是哪些;"count":比如100,代表此次整体更新,有100个数据包;"orderNo":比如3,代表当前数据包,是100个数据包的第3个数据包;"affectedLines",代表以这1个数据包更新基表,会有哪些影响;"totalCnt":代表以这1个数据包更新基表,一共会影响多少行数据;"createdCnt":代表以这1个数据包更新基表,会新增多少行数据;"updatedCnt":代表以这1个数据包更新基表,会更新多少行数据;"deletedCnt":代表以这1个数据包更新基表,会删除多少行数据。
在一个实施例中,通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中,包括:将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中;统计所有JSON子数据包的第一数据包总数,并统计分布式消息队列成功接收的JSON子数据包的第二数据包总数;当第一数据包总数与第二数据包总数相等时,向与系统基表标识相应的目标系统发送基表更新响应;基表更新响应用于指示相应的目标系统从分布式消息队列中获取并解析多个JSON子数据包。
第一数据包总数是指根据基表更新数据所生成的所有JSON子数据包的数量,第二数据包总数是指分布式消息队列成功接收的JSON子数据包的数量。当第一数据包总数与第二数据包总数相等时,则说明分布式消息队列成功接收了所有的JSON子数据包,分布式消息队列中的JSON子数据包为完整的;当第一数据包总数与第二数据包总数不相等时,则说明分布式消息队列中的JSON子数据包不完整。在分布式消息队列中的JSON子数据包完整时,向与系统基表标识相应的目标系统发送基表更新响应,使得目标系统能从分布式消息队列中获取并解析所有JSON子数据包,得到完整的基表更新数据,提高系统基表同步的成功率。
在一个实施例中,当第一数据包总数与第二数据包总数不相等时,删除分布式消息队列中的JSON子数据包,并返回将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中的步骤,直至第一数据包总数与第二数据包总数相等。
在一个实施例中,可对每个JSON子数据包进行编号,可通过分布式消息队列中JSON子数据包的编号检查遗失的或重复的JSON子数据包,并进行及时的遗失包补发及重复包删除,提高基表更新数据下发的速度。
在一个实施例中,分布式消息队列可在每次接收到基表数据或基表更新数据之后,生成相应的消息发布日志,相应地还可以在目标系统获取了分布式消息队列中的基表数据或基表更新数据之后,生成消息消费的日志。消息发布日志和消息消费日志可包括时间戳、消息ID(消息在分布式消息队列的唯一键)、消息KEY(消息在基表下发模型中的唯一键)、消息TAG(针对订阅需要定时推送的基表数据,提供对应的系统基表标识集合;或针对订阅需要实时推送的基表更新数据,提供对应的目标系统的系统标识和相应的系统基表标识集合)等。还可以生成消息异常日志,以便后续排查问题或消息补发。
在一个实施例中,如图4所示,提供了一种系统基表同步装置400,该装置包括:系统基表同步请求接收模块402,用于接收多个目标系统发送的系统基表同步请求;系统基表同步请求中包含相应目标系统的系统标识和系统密钥;系统密钥验证模块404,用于根据系统标识对系统密钥进行验证;基表数据获取模块406,用于当系统密钥验证通过时,获取与系统标识对应的系统基表的基表数据;基表数据发送模块408,用于将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;系统基表同步响应发送模块410,用于通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应;系统基表同步响应用于指示相应的目标系统从分布式消息队列中获取基表数据。
在一个实施例中,该装置还包括基表订阅模块,用于接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。
在一个实施例中,系统密钥验证模块404还用于查找数据库中与系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与系统基表同步请求中包含的系统密钥一致时,则判定系统密钥验证通过。
在一个实施例中,基表订阅模块还用于接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;系统基表同步响应发送模块410,还用于通过分布式消息队列向与系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。
在一个实施例中,基表数据发送模块408还用于当与系统标识对应的系统基表中存在基表更新数据时,则将基表更新数据打包成多个JSON子数据包;通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中。
在一个实施例中,基表数据发送模块408还用于将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中;统计所有JSON子数据包的第一数据包总数,并统计分布式消息队列成功接收的JSON子数据包的第二数据包总数;系统基表同步响应发送模块410还用于当第一数据包总数与第二数据包总数相等时,向与系统基表标识相应的目标系统发送基表更新响应;基表更新响应用于指示相应的目标系统从分布式消息队列中获取并解析多个JSON子数据包。
在一个实施例中,系统基表同步响应发送模块410还用于当第一数据包总数与第二数据包总数不相等时,删除分布式消息队列中的JSON子数据包,并返回将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中的步骤,直至第一数据包总数与第二数据包总数相等。
关于系统基表同步装置的具体限定可以参见上文中对于系统基表同步方法的限定,在此不再赘述。上述系统基表同步装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储基表数据、系统标识等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种系统基表同步方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:接收多个目标系统发送的系统基表同步请求;系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据系统标识对系统密钥进行验证;当系统密钥验证通过时,获取与系统标识对应的系统基表的基表数据;将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应;系统基表同步响应用于指示相应的目标系统从分布式消息队列中获取基表数据。
在一个实施例中,处理器执行计算机程序时,在所实现的接收多个目标系统发送的系统基表同步请求的步骤之前,还包括以下步骤:接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。
在一个实施例中,处理器执行计算机程序时,所实现的根据系统标识对系统密钥进行验证的步骤,包括:查找数据库中与系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与系统基表同步请求中包含的系统密钥一致时,则判定系统密钥验证通过。
在一个实施例中,处理器执行计算机程序时,在所实现的接收多个目标系统发送的系统基表同步请求的步骤之前,还包括以下步骤:接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;所实现的通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应的步骤,包括:通过分布式消息队列向与系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。
在一个实施例中,处理器执行计算机程序时,还实现以下步骤:当与系统标识对应的系统基表中存在基表更新数据时,则将基表更新数据打包成多个JSON子数据包;通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中。
在一个实施例中,处理器执行计算机程序时,所实现的通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中的步骤,包括:将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中;统计所有JSON子数据包的第一数据包总数,并统计分布式消息队列成功接收的JSON子数据包的第二数据包总数;当第一数据包总数与第二数据包总数相等时,向与系统基表标识相应的目标系统发送基表更新响应;基表更新响应用于指示相应的目标系统从分布式消息队列中获取并解析多个JSON子数据包。
在一个实施例中,处理器执行计算机程序时,在所实现的统计所有JSON子数据包的第一数据包总数,并统计分布式消息队列成功接收的JSON子数据包的第二数据包总数的步骤之后,还包括:当第一数据包总数与第二数据包总数不相等时,删除分布式消息队列中的JSON子数据包,并返回将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中的步骤,直至第一数据包总数与第二数据包总数相等。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收多个目标系统发送的系统基表同步请求;系统基表同步请求中包含相应目标系统的系统标识和系统密钥;根据系统标识对系统密钥进行验证;当系统密钥验证通过时,获取与系统标识对应的系统基表的基表数据;将基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应;系统基表同步响应用于指示相应的目标系统从分布式消息队列中获取基表数据。
在一个实施例中,计算机程序被处理器执行时,在所实现的接收多个目标系统发送的系统基表同步请求的步骤之前,还包括以下步骤:接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;根据第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;将验证密钥发送至相应的目标系统中作为系统密钥。
在一个实施例中,计算机程序被处理器执行时,所实现的根据系统标识对系统密钥进行验证的步骤,包括:查找数据库中与系统基表同步请求中包含的系统标识对应的验证密钥;当所查找的验证密钥与系统基表同步请求中包含的系统密钥一致时,则判定系统密钥验证通过。
在一个实施例中,计算机程序被处理器执行时,在所实现的接收多个目标系统发送的系统基表同步请求的步骤之前,还包括以下步骤:接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;系统基表标识集合中包含多个系统基表标识;将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;所实现的通过分布式消息队列向与系统基表标识相应的目标系统发送系统基表同步响应的步骤,包括:通过分布式消息队列向与系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。
在一个实施例中,计算机程序被处理器执行时,还实现以下步骤:当与系统标识对应的系统基表中存在基表更新数据时,则将基表更新数据打包成多个JSON子数据包;通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中。
在一个实施例中,计算机程序被处理器执行时,所实现的通过分布式消息队列将多个JSON子数据包同步至相应的目标系统中的步骤,包括:将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中;统计所有JSON子数据包的第一数据包总数,并统计分布式消息队列成功接收的JSON子数据包的第二数据包总数;当第一数据包总数与第二数据包总数相等时,向与系统基表标识相应的目标系统发送基表更新响应;基表更新响应用于指示相应的目标系统从分布式消息队列中获取并解析多个JSON子数据包。
在一个实施例中,计算机程序被处理器执行时,在所实现的统计所有JSON子数据包的第一数据包总数,并统计分布式消息队列成功接收的JSON子数据包的第二数据包总数的步骤之后,还包括:当第一数据包总数与第二数据包总数不相等时,删除分布式消息队列中的JSON子数据包,并返回将多个JSON子数据包和相应系统基表的系统基表标识发送至分布式消息队列中的步骤,直至第一数据包总数与第二数据包总数相等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种系统基表同步方法,所述方法包括:
接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;
根据所述系统标识对所述系统密钥进行验证;
当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;
将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;
通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。
2.根据权利要求1所述的方法,其特征在于,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:
接收多个目标系统发送的第一基表订阅请求,每个第一基表订阅请求包含相应目标系统的系统标识;
根据所述第一基表订阅请求生成与每个系统标识对应的验证密钥,并将每个系统标识和对应的验证密钥存储至数据库中;
将验证密钥发送至相应的目标系统中作为系统密钥。
3.根据权利要求2所述的方法,其特征在于,所述根据所述系统标识对所述系统密钥进行验证,包括:
查找所述数据库中与所述系统基表同步请求中包含的系统标识对应的验证密钥;
当所查找的验证密钥与所述系统基表同步请求中包含的系统密钥一致时,则判定所述系统密钥验证通过。
4.根据权利要求1所述的方法,其特征在于,在所述接收多个目标系统发送的系统基表同步请求之前,还包括:
接收多个目标系统发送的第二基表订阅请求,每个第二基表订阅请求包含相应目标系统的系统标识和系统基表标识集合;所述系统基表标识集合中包含多个系统基表标识;
将每个目标系统的系统标识和系统基表标识集合写入分布式消息队列;
所述通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应,包括:
通过所述分布式消息队列向与所述系统基表标识所属的系统基表标识集合对应的目标系统发送系统基表同步响应。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
当与所述系统标识对应的系统基表中存在基表更新数据时,则将所述基表更新数据打包成多个JSON子数据包;
通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中。
6.根据权利要求5所述的方法,其特征在于,所述通过分布式消息队列将所述多个JSON子数据包同步至相应的目标系统中,包括:
将所述多个JSON子数据包和相应系统基表的系统基表标识发送至所述分布式消息队列中;
统计所有JSON子数据包的第一数据包总数,并统计所述分布式消息队列成功接收的JSON子数据包的第二数据包总数;
当所述第一数据包总数与所述第二数据包总数相等时,向与所述系统基表标识相应的目标系统发送基表更新响应;所述基表更新响应用于指示相应的目标系统从所述分布式消息队列中获取并解析所述多个JSON子数据包。
7.根据权利要求6所述的方法,其特征在于,在所述统计所有JSON子数据包的第一数据包总数,并统计所述分布式消息队列成功接收的JSON子数据包的第二数据包总数之后,还包括:
当所述第一数据包总数与所述第二数据包总数不相等时,删除所述分布式消息队列中的JSON子数据包,并返回将所述多个JSON子数据包和相应系统基表的系统基表标识发送至所述分布式消息队列中的步骤,直至所述第一数据包总数与所述第二数据包总数相等。
8.一种系统基表同步装置,其特征在于,所述装置包括:
系统基表同步请求接收模块,用于接收多个目标系统发送的系统基表同步请求;所述系统基表同步请求中包含相应目标系统的系统标识和系统密钥;
系统密钥验证模块,用于根据所述系统标识对所述系统密钥进行验证;
基表数据获取模块,用于当所述系统密钥验证通过时,获取与所述系统标识对应的系统基表的基表数据;
基表数据发送模块,用于将所述基表数据和相应的系统基表的系统基表标识发送至分布式消息队列中;
系统基表同步响应发送模块,用于通过所述分布式消息队列向与所述系统基表标识相应的目标系统发送系统基表同步响应;所述系统基表同步响应用于指示所述相应的目标系统从所述分布式消息队列中获取所述基表数据。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN201810124332.9A 2018-02-07 2018-02-07 系统基表同步方法、装置、计算机设备和存储介质 Active CN108376154B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810124332.9A CN108376154B (zh) 2018-02-07 2018-02-07 系统基表同步方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810124332.9A CN108376154B (zh) 2018-02-07 2018-02-07 系统基表同步方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN108376154A true CN108376154A (zh) 2018-08-07
CN108376154B CN108376154B (zh) 2020-11-24

Family

ID=63017576

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810124332.9A Active CN108376154B (zh) 2018-02-07 2018-02-07 系统基表同步方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN108376154B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928598A (zh) * 2019-11-11 2020-03-27 南方电网财务有限公司 系统配置方法、装置、计算机设备和存储介质
CN111552907A (zh) * 2020-04-29 2020-08-18 成都新致云服信息技术有限公司 消息处理方法、装置、设备和存储介质
CN114065237A (zh) * 2021-11-04 2022-02-18 深圳华云信息系统有限公司 验证方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679888A (zh) * 2015-03-17 2015-06-03 浪潮集团有限公司 一种数据同步的装置及方法
CN104813685A (zh) * 2012-09-22 2015-07-29 谷歌公司 用于分布式状态的同步的订阅通知机制
US20150339113A1 (en) * 2013-05-10 2015-11-26 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
CN106095954A (zh) * 2016-06-14 2016-11-09 成都镜杰科技有限责任公司 用于企业供应链的数据库管理方法
CN107301196A (zh) * 2017-05-03 2017-10-27 北京小度信息科技有限公司 数据同步方法、装置、设备及监控服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104813685A (zh) * 2012-09-22 2015-07-29 谷歌公司 用于分布式状态的同步的订阅通知机制
US20150339113A1 (en) * 2013-05-10 2015-11-26 Box, Inc. Identification and handling of items to be ignored for synchronization with a cloud-based platform by a synchronization client
CN104679888A (zh) * 2015-03-17 2015-06-03 浪潮集团有限公司 一种数据同步的装置及方法
CN106095954A (zh) * 2016-06-14 2016-11-09 成都镜杰科技有限责任公司 用于企业供应链的数据库管理方法
CN107301196A (zh) * 2017-05-03 2017-10-27 北京小度信息科技有限公司 数据同步方法、装置、设备及监控服务器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110928598A (zh) * 2019-11-11 2020-03-27 南方电网财务有限公司 系统配置方法、装置、计算机设备和存储介质
CN110928598B (zh) * 2019-11-11 2024-01-30 南方电网财务有限公司 系统配置方法、装置、计算机设备和存储介质
CN111552907A (zh) * 2020-04-29 2020-08-18 成都新致云服信息技术有限公司 消息处理方法、装置、设备和存储介质
CN114065237A (zh) * 2021-11-04 2022-02-18 深圳华云信息系统有限公司 验证方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN108376154B (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
CN112837160B (zh) 基于区块链的跨链交易方法、装置和计算机可读存储介质
CN108388438A (zh) 系统基表更新方法、装置、计算机设备和存储介质
CN110502916B (zh) 一种基于区块链的敏感性数据处理方法与系统
CN104503745B (zh) 一种生成应用渠道包的方法和装置
CN109271805A (zh) 一种基于区块链的数据分区储存、查询方法及系统
CN106354795B (zh) 一种分布式数据交换系统
CN109542865A (zh) 分布式集群系统配置文件同步方法、装置、系统及介质
CN108376154A (zh) 系统基表同步方法、装置、计算机设备和存储介质
EP4300323A1 (en) Data processing method and apparatus for blockchain network, computer device, computer readable storage medium, and computer program product
CN110147684A (zh) 用于实现区块链数据隐私保护的方法及设备
CN109547488A (zh) 一种基于联盟区块链的可信数据计算及交换系统
CN111651525A (zh) 区块链数据存储方法和装置
CN109656778A (zh) 数据获取方法、装置、计算机设备和存储介质
CN108596627A (zh) 一种基于区块链和雾计算的大数据计算方法及系统
CN109376197A (zh) 一种数据同步方法、服务器及计算机存储介质
CN113765675B (zh) 一种交易数据处理方法、装置、设备以及介质
CN109634615A (zh) 应用安装包的发布方法、验证方法和装置
CN110336675A (zh) 针对数字证书到期日的监控方法和装置
CN110378753A (zh) 一种广告投放策略确定方法及装置
CN113660538B (zh) 直播推流回源方法及系统
CN114760157B (zh) 城市规划领域区块链节点合法性验证方法及系统
CN113595737B (zh) 基于区块链的敏捷指控系统
CN109309671A (zh) 一种基于区块链的通信设备数据管理方法和装置
CN110935168B (zh) 用于全球同服架构的分布式id生成方法、装置及设备
CN117010889A (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
GR01 Patent grant
GR01 Patent grant