CN108491332A - 一种基于Redis的实时缓存更新方法和*** - Google Patents

一种基于Redis的实时缓存更新方法和*** Download PDF

Info

Publication number
CN108491332A
CN108491332A CN201810300592.7A CN201810300592A CN108491332A CN 108491332 A CN108491332 A CN 108491332A CN 201810300592 A CN201810300592 A CN 201810300592A CN 108491332 A CN108491332 A CN 108491332A
Authority
CN
China
Prior art keywords
database
data
information
binlog
real
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
CN201810300592.7A
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.)
Zhejiang Little Thai Technology Co Ltd
Original Assignee
Zhejiang Little Thai 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 Zhejiang Little Thai Technology Co Ltd filed Critical Zhejiang Little Thai Technology Co Ltd
Priority to CN201810300592.7A priority Critical patent/CN108491332A/zh
Publication of CN108491332A publication Critical patent/CN108491332A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据缓存技术领域,公开了一种基于Redis的实时缓存更新方法和***,包括以下步骤,S1、实时获取用户对数据库中的数据的修改信息;S2、基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息;S3、接收数据库推送的binlog信息,将binlog信息解析;S4、获取并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息;S5、基于更新信息修改缓存数据库中的数据;通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改;将同步逻辑和更新缓存数据库中的数据的逻辑分开,分为两个逻辑。先完成数据库的修改,然后根据数据库的修改来修改缓存数据库中的数据,从而减小了逻辑发生混乱的概率。

Description

一种基于Redis的实时缓存更新方法和***
技术领域
本发明涉及数据缓存技术领域,具体涉及一种基于Redis的实时缓存更新方法和***。
背景技术
缓存就是数据交换的缓冲区,当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找。由于缓存的运行速度比内存快得多,故缓存的作用就是帮助硬件更快地运行。
因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在用完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条,最快的是CPU上镶的L1和L2缓存,显卡的显存是给显卡运算芯片用的缓存,硬盘上也有16M或者32M的缓存。
redis是一个key-value存储***。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
canal的原理是模拟Slave向Master发送请求,canal解析binlog,但不将解析结果持久化,而是保存在内存中,每次有客户端读取一次消息,就删除该消息。
消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过写和检索出入列队的针对应用程序的数据(消息)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。
在实际缓存过程中,通常会有以下几种方案对缓存中的内容进行同步。
方案一,定时同步缓存的方案。通过一个预设的时间将数据库的数据同步到缓存服务器中。预设的时间通常在秒以上,否则计算机会长时间处在工作状态,浪费计算机的性能。这样的方案,在这个预设时间段内,用户变更的数据不能及时的显示出来。
方案二,在后台管理服务中嵌入同步缓存的功能。在此方案中,用户修改需要进行缓存的数据的同时修改缓存服务器中的数据。这样的方案,缓存同步逻辑会耦合在业务代码逻辑中,在缓存数据库中存储的数据可能存储在多个key当中,在修改缓存数据库中的数据时,需要调用所有存储有该数据的key并进行更改。在数据多时,缓存逻辑和同步逻辑混合在一起,缓存的逻辑变大,容易造成同步逻辑和业务逻辑的混乱。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种基于Redis的实时缓存更新方法。
为实现上述目的,本发明提供了如下技术方案:
一种基于Redis的实时缓存更新方法,包括以下步骤,
S1、实时获取用户对数据库中的数据的修改信息;
S2、基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息;
S3、接收数据库推送的binlog信息,将binlog信息解析;
S4、获取并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息;
S5、基于更新信息修改缓存数据库中的数据。
通过采用上述技术方案,若采用现有技术,将数据库和缓存数据库中的数据同时修改,由于在数据库和缓存数据库中存储数据的方式不同,在缓存数据库中对应一个数据可能会有多个key来存储,在数据多时,缓存数据库中需要修改的量大,则缓存逻辑大,容易导致缓存逻辑和同步逻辑的混乱。
通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改。
通过获取解析后的binlog信息,并将解析后的binlog转化为与缓存数据库中的数据对应的更新信息,基于更新信息来对应更新缓存数据库中的信息,从而将同步逻辑和更新缓存数据库中的数据的逻辑分开,分为两个逻辑。先完成数据库的修改,然后根据数据库的修改来修改缓存数据库中的数据,从而减小了逻辑发生混乱的概率。
本发明的进一步设置为:步骤S3通过canal接收并解析binlog信息。
通过采用上述技术方案,canal伪装为数据库的从库服务器,从而能够监听到数据库中binlog信息,通过canal将binlog信息解析并推送解析后的binlog信息。
本发明的进一步设置为:步骤S3和S4之间设置有用于接收并存储解析后的binlog信息的消息队列。
通过采用上述技术方案,消息队列用于接收并存储解析后的binlog信息。通过消息队列对解析后的binlog信息进行存储。由于计算机等设备在执行操作过程中可能出现问题,若是将解析后的binlog信息存储在缓存数据库中,缓存数据库中在容量低时会清除数据,可能会将解析后的binlog信息清除。所以通过消息队列对解析后的binlog信息进行存储,从而减小了binlog数据发生丢失的概率。
本发明的进一步设置为:所述消息队列采取MQ。
通过采用上述技术方案,消息队列MQ功能强大、运行稳定、技术成熟、适用的操作***多。
针对现有技术存在的不足,本发明的目的在于提供一种基于Redis的实时缓存更新***。
为实现上述目的,本发明提供了如下技术方案:
一种基于Redis的实时缓存更新***,包括以下模块,
获取模块,用于实时获取用户对数据库中的数据的修改信息;
修改模块,基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息;
解析模块,用于接收数据库推送的binlog信息,将binlog信息解析;
转化模块,获取并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息;
更新模块,基于更新信息修改缓存数据库中的数据。
通过采用上述技术方案,若采用现有技术,将数据库和缓存数据库中的数据同时修改,由于在数据库和缓存数据库中存储数据的方式不同,在缓存数据库中对应一个数据可能会有多个key来存储,在数据多时,缓存数据库中需要修改的量大,则缓存逻辑大,容易导致缓存逻辑和同步逻辑的混乱。
通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改。
通过获取解析后的binlog信息,并将解析后的binlog转化为与缓存数据库中的数据对应的更新信息,基于更新信息来对应更新缓存数据库中的信息,从而将同步逻辑和更新缓存数据库中的数据的逻辑分开,分为两个逻辑。先完成数据库的修改,然后根据数据库的修改来修改缓存数据库中的数据,从而减小了逻辑发生混乱的概率。
本发明的进一步设置为:解析模块通过canal接收并解析binlog信息。
通过采用上述技术方案,canal伪装为数据库的从库服务器,从而能够监听到数据库中binlog信息,通过canal将binlog信息解析并推送解析后的binlog信息。
本发明的进一步设置为:解析模块和转化模块之间设置有用于接收并存储解析后的binlog信息的消息队列。
通过采用上述技术方案,消息队列用于接收并存储解析后的binlog信息。通过消息队列对解析后的binlog信息进行存储。由于计算机等设备在执行操作过程中可能出现问题,若是将解析后的binlog信息存储在缓存数据库中,缓存数据库中在容量低时会清除数据,可能会将解析后的binlog信息清除。所以通过消息队列对解析后的binlog信息进行存储,从而减小了binlog数据发生丢失的概率。
本发明的进一步设置为:所述消息队列采取MQ。
通过采用上述技术方案,消息队列MQ功能强大、运行稳定、技术成熟、适用的操作***多。
本发明具有以下优点:
1、通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改;
2、将同步逻辑和更新缓存数据库中的数据的逻辑分开,分为两个逻辑。先完成数据库的修改,然后根据数据库的修改来修改缓存数据库中的数据,从而减小了逻辑发生混乱的概率;
3、canal伪装为数据库的从库服务器,从而能够监听到数据库中binlog信息,通过canal将binlog信息解析并推送解析后的binlog信息。
附图说明
图1为基于Redis的实时缓存更新方法的流程图;
图2为基于Redis的实时缓存更新***的流程图。
具体实施方式
参照附图对本发明做进一步说明。
实施例1,如图1所示:一种基于Redis的实时缓存更新方法,包括以下步骤,
S1、实时获取对数据库中的数据的修改信息。
S2、基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息。
若采用现有技术,将数据库和缓存数据库中的数据同时修改,由于在数据库和缓存数据库中存储数据的方式不同,在缓存数据库中对应一个数据可能会有多个key来存储,在数据多时,缓存数据库中需要修改的量大,则缓存逻辑大,容易导致缓存逻辑和同步逻辑的混乱。
通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改。
S3、通过canal接收数据库推送的binlog信息,将binlog信息解析。
canal伪装为数据库的从库服务器,从而能够监听到数据库中binlog信息,通过canal将binlog信息解析并推送至息队列MQ。
消息队列MQ用于接收并存储解析后的binlog信息。通过消息队列MQ对解析后的binlog信息进行存储。由于计算机等设备在执行操作过程中可能出现问题,若是将解析后的binlog信息存储在缓存数据库中,缓存数据库中在容量低时会清除数据,可能会将解析后的binlog信息清除。所以通过消息队列MQ对解析后的binlog信息进行存储,从而减小了binlog数据发生丢失的概率。
S4、获取存储在消息队列MQ当中的解析后的binlog信息,并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息。
S5、基于更新信息修改缓存数据库中的数据。
通过获取消息队列MQ中的解析后的binlog信息,通过将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息,由于缓存数据库和数据库中文件的位置和储存方式等方面不同,通过转化,从而获得更新信息,并根据更新信息将缓存数据库中数据更改。
由于在计算机内完成该过程为毫秒级,所以此方法减小了数据不能及时显示的概率。
实施例2,如图2所示:一种基于Redis的实时缓存更新***,包括获取模块、修改模块、解析模块、转化模块、更新模块。
获取模块用于实时获取对数据库中的数据的修改信息。
修改模块基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息。
若采用现有技术,将数据库和缓存数据库中的数据同时修改,由于在数据库和缓存数据库中存储数据的方式不同,在缓存数据库中对应一个数据可能会有多个key来存储,在数据多时,缓存数据库中需要修改的量大,则缓存逻辑大,容易导致缓存逻辑和同步逻辑的混乱。
通过实时获取对数据库的数据的修改信息,实时修改数据库中的数据,从而完成数据库中的数据修改。
解析模块通过canal接收数据库推送的binlog信息,将binlog信息解析。canal伪装为数据库的从库服务器,从而能够监听到数据库中binlog信息,通过canal将binlog信息解析并推送至息队列MQ。
消息队列MQ用于接收并存储解析后的binlog信息。通过消息队列MQ对解析后的binlog信息进行存储。由于计算机等设备在执行操作过程中可能出现问题,若是将解析后的binlog信息存储在缓存数据库中,缓存数据库中在容量低时会清除数据,可能会将解析后的binlog信息清除。所以通过消息队列MQ对解析后的binlog信息进行存储,从而减小了binlog数据发生丢失的概率。
转化模块获取存储在消息队列MQ当中的解析后的binlog信息,并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息。
更新模块基于更新信息修改缓存数据库中的数据。
通过获取消息队列MQ中的解析后的binlog信息,通过将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息,由于缓存数据库和数据库中文件的位置和储存方式不同,通过转化,从而获得更新信息,并根据更新信息将缓存数据库中数据更改。
由于在计算机内完成该过程为毫秒级,所以此***减小了数据不能及时显示的概率。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种基于Redis的实时缓存更新方法,其特征是:包括以下步骤,
S1、实时获取用户对数据库中的数据的修改信息;
S2、基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息;
S3、接收数据库推送的binlog信息,将binlog信息解析;
S4、获取并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息;
S5、基于更新信息修改缓存数据库中的数据。
2.根据权利要求1所述的一种基于Redis的实时缓存更新方法,其特征是:步骤S3通过canal接收并解析binlog信息。
3.根据权利要求2所述的一种基于Redis的实时缓存更新方法,其特征是:步骤S3和S4之间设置有用于接收并存储解析后的binlog信息的消息队列。
4.根据权利要求3所述的一种基于Redis的实时缓存更新方法,其特征是:所述消息队列采取MQ。
5.一种基于Redis的实时缓存更新***,其特征是:包括以下模块,
获取模块,用于实时获取用户对数据库中的数据的修改信息;
修改模块,基于修改信息修改数据库中的数据并对应数据库数据的修改生成binlog信息;
解析模块,用于接收数据库推送的binlog信息,将binlog信息解析;
转化模块,获取并将解析后的binlog信息转化为与缓存数据库中数据对应的更新信息;
更新模块,基于更新信息修改缓存数据库中的数据。
6.根据权利要求5所述的一种基于Redis的实时缓存更新***,其特征是:解析模块通过canal接收并解析binlog信息。
7.根据权利要求6所述的一种基于Redis的实时缓存更新***,其特征是:解析模块和转化模块之间设置有用于接收并存储解析后的binlog信息的消息队列。
8.根据权利要求7所述的一种基于Redis的实时缓存更新***,其特征是:所述消息队列采取MQ。
CN201810300592.7A 2018-04-04 2018-04-04 一种基于Redis的实时缓存更新方法和*** Pending CN108491332A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810300592.7A CN108491332A (zh) 2018-04-04 2018-04-04 一种基于Redis的实时缓存更新方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810300592.7A CN108491332A (zh) 2018-04-04 2018-04-04 一种基于Redis的实时缓存更新方法和***

Publications (1)

Publication Number Publication Date
CN108491332A true CN108491332A (zh) 2018-09-04

Family

ID=63314865

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810300592.7A Pending CN108491332A (zh) 2018-04-04 2018-04-04 一种基于Redis的实时缓存更新方法和***

Country Status (1)

Country Link
CN (1) CN108491332A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710688A (zh) * 2018-11-26 2019-05-03 福建天泉教育科技有限公司 一种数据实时比对校验方法及消息中间件
CN109857812A (zh) * 2019-02-27 2019-06-07 珠海天燕科技有限公司 一种处理缓存中数据的方法和装置
CN109871388A (zh) * 2019-02-19 2019-06-11 北京字节跳动网络技术有限公司 数据缓存方法、装置、终电子设备及存储介质
CN110704401A (zh) * 2019-10-10 2020-01-17 北京字节跳动网络技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111046106A (zh) * 2019-12-19 2020-04-21 杭州中恒电气股份有限公司 缓存数据同步方法、装置、设备及介质
CN111127252A (zh) * 2019-12-24 2020-05-08 华中科技大学 一种水资源管理决策支持***的数据管理方法
CN111563102A (zh) * 2020-04-10 2020-08-21 中国联合网络通信集团有限公司 缓存更新方法、服务器、***及存储介质
CN112419018A (zh) * 2020-01-03 2021-02-26 上海哔哩哔哩科技有限公司 分布式环境下的通用数据对账方法、服务器及存储介质
CN113138993A (zh) * 2020-01-19 2021-07-20 上海臻客信息技术服务有限公司 一种基于redis的酒店信息更新方法、装置、设备及介质
CN113742617A (zh) * 2020-08-28 2021-12-03 北京沃东天骏信息技术有限公司 一种缓存更新的方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572689A (zh) * 2013-10-17 2015-04-29 腾讯科技(深圳)有限公司 数据同步方法、装置及***
CN106484869A (zh) * 2016-10-12 2017-03-08 北京集奥聚合科技有限公司 一种基于mysql binlog的分布式缓存方法及***
CN107341212A (zh) * 2017-06-26 2017-11-10 努比亚技术有限公司 一种缓存更新方法及设备
CN107783975A (zh) * 2016-08-24 2018-03-09 北京京东尚科信息技术有限公司 分布式数据库同步处理的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104572689A (zh) * 2013-10-17 2015-04-29 腾讯科技(深圳)有限公司 数据同步方法、装置及***
CN107783975A (zh) * 2016-08-24 2018-03-09 北京京东尚科信息技术有限公司 分布式数据库同步处理的方法和装置
CN106484869A (zh) * 2016-10-12 2017-03-08 北京集奥聚合科技有限公司 一种基于mysql binlog的分布式缓存方法及***
CN107341212A (zh) * 2017-06-26 2017-11-10 努比亚技术有限公司 一种缓存更新方法及设备

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710688A (zh) * 2018-11-26 2019-05-03 福建天泉教育科技有限公司 一种数据实时比对校验方法及消息中间件
CN109871388A (zh) * 2019-02-19 2019-06-11 北京字节跳动网络技术有限公司 数据缓存方法、装置、终电子设备及存储介质
CN109857812A (zh) * 2019-02-27 2019-06-07 珠海天燕科技有限公司 一种处理缓存中数据的方法和装置
CN110704401A (zh) * 2019-10-10 2020-01-17 北京字节跳动网络技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111046106A (zh) * 2019-12-19 2020-04-21 杭州中恒电气股份有限公司 缓存数据同步方法、装置、设备及介质
CN111127252A (zh) * 2019-12-24 2020-05-08 华中科技大学 一种水资源管理决策支持***的数据管理方法
CN112419018A (zh) * 2020-01-03 2021-02-26 上海哔哩哔哩科技有限公司 分布式环境下的通用数据对账方法、服务器及存储介质
CN112419018B (zh) * 2020-01-03 2022-11-18 上海哔哩哔哩科技有限公司 分布式环境下的通用数据对账方法、服务器及存储介质
CN113138993A (zh) * 2020-01-19 2021-07-20 上海臻客信息技术服务有限公司 一种基于redis的酒店信息更新方法、装置、设备及介质
CN111563102A (zh) * 2020-04-10 2020-08-21 中国联合网络通信集团有限公司 缓存更新方法、服务器、***及存储介质
CN113742617A (zh) * 2020-08-28 2021-12-03 北京沃东天骏信息技术有限公司 一种缓存更新的方法和装置

Similar Documents

Publication Publication Date Title
CN108491332A (zh) 一种基于Redis的实时缓存更新方法和***
US8224860B2 (en) Database management system
US7783607B2 (en) Decentralized record expiry
CN108509462B (zh) 一种同步活动事务表的方法及装置
CN110175213A (zh) 一种基于SCN方式的Oracle数据库同步***及方法
CN107888657A (zh) 低延迟分布式存储***
CN101901237B (zh) 一种基于SQlite构建的类型-索引-内容方式分布式数据库
CN109743137B (zh) 一种支持更新的分布式延迟消息队列处理***
CN111026727A (zh) 基于日志文件的表维度检索数据同步方法、***及装置
CN106599104A (zh) 一种基于redis集群的海量数据关联方法
CN112307037A (zh) 一种数据同步方法和装置
CN112612799B (zh) 一种数据同步方法及终端
CN110750372B (zh) 基于共享内存的日志***及日志管理方法
US20220035786A1 (en) Distributed database management system with dynamically split b-tree indexes
CN107302569B (zh) 一种面向云平台的安全监控数据采集与存储方法
CN111596922A (zh) 基于redis实现自定义缓存注解的方法
CN103164525A (zh) Web应用发布方法和装置
CN107040576A (zh) 信息推送方法及装置、通讯***
CN111752920A (zh) 用于管理元数据的方法、***及存储介质
CN112000649A (zh) 一种基于map reduce的增量数据同步的方法和装置
CN111046106A (zh) 缓存数据同步方法、装置、设备及介质
CN102724301B (zh) 云数据库***以及云数据读写处理方法、设备
US20170371806A1 (en) Pulse Counters
CN116701387A (zh) 数据分段写入方法、数据读取方法及装置
CN116028505A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180904