[go: up one dir, main page]

CN111338810A - Method and apparatus for storing information - Google Patents

Method and apparatus for storing information Download PDF

Info

Publication number
CN111338810A
CN111338810A CN201811553616.6A CN201811553616A CN111338810A CN 111338810 A CN111338810 A CN 111338810A CN 201811553616 A CN201811553616 A CN 201811553616A CN 111338810 A CN111338810 A CN 111338810A
Authority
CN
China
Prior art keywords
queue
identification information
confirmed
stored
determining
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
CN201811553616.6A
Other languages
Chinese (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 Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201811553616.6A priority Critical patent/CN111338810A/en
Publication of CN111338810A publication Critical patent/CN111338810A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

The embodiment of the application discloses a method and a device for storing information. One embodiment of the method comprises: receiving at least one identification information to be stored; selecting identification information to be stored from at least one identification information to be stored, and executing the following storage steps: generating a queue element comprising the identification information to be stored and the current time in response to determining that the target queue in the queue group does not comprise the selected identification information to be stored; determining whether a queue length of the target queue is less than a length threshold; in response to determining yes, storing the generated queue element to the target queue; in response to the determination of no, establishing a new queue, storing the generated queue elements to the new queue, adding the new queue to the queue group, and determining the new queue as a target queue; determining whether at least one piece of identification information to be stored has unselected identification information to be stored; in response to determining that there is no, outputting the set of queues. This embodiment enables deduplication of the queue.

Description

用于存储信息的方法和装置Method and apparatus for storing information

技术领域technical field

本申请实施例涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及用于存储信息的方法和装置。The embodiments of the present application relate to the field of computer technologies, in particular to the field of Internet technologies, and in particular, to methods and apparatuses for storing information.

背景技术Background technique

消息是在两台计算机间传送的数据单位。消息可以包含文本字符串;也可以包含嵌入对象。A message is a unit of data sent between two computers. Messages can contain text strings; they can also contain embedded objects.

消息队列是在消息的传输过程中保存消息的容器。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功地传递。A message queue is a container that holds messages during their transmission. A message queue manager acts as a middleman when relaying messages from its source to its destination. The main purpose of a queue is to provide routing and guarantee delivery of messages; if a receiver is unavailable when a message is sent, a message queue holds the message until it can be delivered successfully.

发明内容SUMMARY OF THE INVENTION

本申请实施例提出了用于存储信息的方法和装置。The embodiments of the present application propose a method and apparatus for storing information.

第一方面,本申请实施例提供了一种用于存储信息的方法,该方法包括:接收至少一个待存储标识信息;从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素;确定上述目标队列的队列长度是否小于长度阈值;响应于确定是,将所生成的队列元素存储到上述目标队列;响应于确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;响应于确定不存在,输出上述队列组。In a first aspect, an embodiment of the present application provides a method for storing information, the method includes: receiving at least one identification information to be stored; selecting identification information to be stored from the at least one identification information to be stored, and performing the following storage Step: in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate a queue element including the selected identification information to be stored and the time information of the current time; determine whether the queue length of the above-mentioned target queue is less than Length threshold; in response to determining yes, store the generated queue elements in the above-mentioned target queue; in response to determining no, establish a new queue, store the generated queue elements in the above-mentioned new queue, and add the above-mentioned new queue to the above-mentioned queue group, Determining the above-mentioned new queue as a target queue; determining whether there is unselected identification information to be stored in the at least one identification information to be stored; in response to determining that it does not exist, outputting the above-mentioned queue group.

在一些实施例中,上述方法还包括:响应于确定上述至少一个待存储标识信息中存在未被选取过的待存储标识信息,从上述至少一个待存储标识信息中重新选取未被选取过的待存储标识信息,继续执行上述存储步骤。In some embodiments, the above method further includes: in response to determining that there is unselected identification information to be stored in the at least one identification information to be stored, reselecting the unselected identification information to be stored from the at least one identification information to be stored The identification information is stored, and the above storage steps are continued.

在一些实施例中,在上述响应于确定不存在,输出上述队列组之后,上述存储步骤还包括:删除上述队列组中除上述目标队列以外的队列中的、与上述目标队列中的队列元素相同的元素。In some embodiments, after outputting the queue group in response to determining that it does not exist, the storing step further includes: deleting queue elements in the queue group other than the target queue that are the same as the queue elements in the target queue Elements.

在一些实施例中,在上述响应于确定不存在,输出上述队列组之后,上述存储步骤还包括:从上述目标队列中顺序获取预设数目个的队列元素,对于所获取的预设数目个的队列元素中的队列元素,基于预设的重试次数、该队列元素中的标识信息和时间信息生成待确认元素,将所生成的待确认元素添加到待确认队列,将该队列元素从上述目标队列中删除。In some embodiments, after the above-mentioned outputting the above-mentioned queue group in response to determining that it does not exist, the above-mentioned storing step further includes: sequentially acquiring a preset number of queue elements from the above-mentioned target queue, for the acquired preset number of queue elements The queue element in the queue element generates an element to be confirmed based on the preset number of retries, the identification information and time information in the queue element, adds the generated element to be confirmed to the queue to be confirmed, and removes the queue element from the above target. removed from the queue.

在一些实施例中,上述存储步骤还包括:对于上述待确认队列中的待确认元素,将该待确认元素中的标识信息发送给通信连接的客户端,接收从上述客户端发送的、针对上述标识信息的反馈信息,响应于根据上述反馈信息确定上述标识信息未被确认,将该待确认元素中的重试次数增加预定值,响应于确定该待确认元素中的时间信息对应的时刻与当前时刻的差值小于或等于预设时长,确定该待确认元素中的重试次数是否大于重试次数阈值,响应于确定上述重试次数大于重试次数阈值,将该待确认元素存储到死信队列,以及将该待确认元素从上述待确认队列中删除,响应于确定上述反馈信息表征上述标识信息已被确认,将上述待确认元素从上述待确认队列中删除。In some embodiments, the above-mentioned storing step further includes: for the to-be-confirmed element in the above-mentioned to-be-confirmed queue, sending the identification information in the to-be-confirmed element to the client of the communication connection, and receiving the information sent from the above-mentioned client for the above-mentioned The feedback information of the identification information, in response to determining that the identification information is not confirmed according to the above-mentioned feedback information, the number of retries in the element to be confirmed is increased by a predetermined value, in response to determining that the time corresponding to the time information in the element to be confirmed is the same as the current time The difference between the times is less than or equal to the preset duration, determining whether the number of retries in the element to be confirmed is greater than the threshold of the number of retries, and in response to determining that the number of retries is greater than the threshold of the number of retries, the element to be confirmed is stored in the dead letter queue, and delete the element to be confirmed from the queue to be confirmed, and delete the element to be confirmed from the queue to be confirmed in response to determining that the feedback information indicates that the identification information has been confirmed.

第二方面,本申请实施例提供了一种用于存储信息的装置,该装置包括:接收单元,被配置成接收至少一个待存储标识信息;存储单元,被配置成从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素;确定上述目标队列的队列长度是否小于长度阈值;响应于确定是,将所生成的队列元素存储到上述目标队列;响应于确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;响应于确定不存在,输出上述队列组。In a second aspect, an embodiment of the present application provides an apparatus for storing information, the apparatus comprising: a receiving unit configured to receive at least one identification information to be stored; a storage unit configured to obtain information from the at least one identification to be stored Select the identification information to be stored in the information, and perform the following storage steps: in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate a selected identification information to be stored and the time information of the current time. Queue element; determine whether the queue length of the above-mentioned target queue is less than the length threshold; in response to determining yes, store the generated queue element in the above-mentioned target queue; in response to determining no, establish a new queue, and store the generated queue element in the above-mentioned queue element new queue, adding the above-mentioned new queue to the above-mentioned queue group, and determining the above-mentioned new queue as the target queue; determining whether there is unselected identification information to be stored in the at least one identification information to be stored; in response to determining that it does not exist, output the above queue group.

在一些实施例中,上述装置还包括:继续单元,被配置成响应于确定上述至少一个待存储标识信息中存在未被选取过的待存储标识信息,从上述至少一个待存储标识信息中重新选取未被选取过的待存储标识信息,继续执行上述存储步骤。In some embodiments, the above-mentioned apparatus further includes: a continuing unit configured to, in response to determining that there is unselected identification information to be stored in the at least one identification information to be stored, reselect from the at least one identification information to be stored For the identification information to be stored that has not been selected, continue to perform the above storage step.

在一些实施例中,上述存储单元还包括:第一删除单元,被配置成删除上述队列组中除上述目标队列以外的队列中的、与上述目标队列中的队列元素相同的元素。In some embodiments, the above-mentioned storage unit further includes: a first deletion unit configured to delete the same elements as the queue elements in the above-mentioned target queue in the queues in the above-mentioned queue group except the above-mentioned target queue.

在一些实施例中,上述存储单元还包括:第二删除单元,被配置成从上述目标队列中顺序获取预设数目个的队列元素,对于所获取的预设数目个的队列元素中的队列元素,基于预设的重试次数、该队列元素中的标识信息和时间信息生成待确认元素,将所生成的待确认元素添加到待确认队列,将该队列元素从上述目标队列中删除。In some embodiments, the above-mentioned storage unit further includes: a second deletion unit configured to sequentially acquire a preset number of queue elements from the above-mentioned target queue, and for the acquired queue elements in the preset number of queue elements , generating a to-be-confirmed element based on a preset number of retries, identification information and time information in the queue element, adding the generated to-be-confirmed element to the to-be-confirmed queue, and deleting the queue element from the target queue.

在一些实施例中,上述存储单元还包括:第三删除单元,被配置成对于上述待确认队列中的待确认元素,将该待确认元素中的标识信息发送给通信连接的客户端,接收从上述客户端发送的、针对上述标识信息的反馈信息,响应于根据上述反馈信息确定上述标识信息未被确认,将该待确认元素中的重试次数增加预定值,响应于确定该待确认元素中的时间信息对应的时刻与当前时刻的差值小于或等于预设时长,确定该待确认元素中的重试次数是否大于重试次数阈值,响应于确定上述重试次数大于重试次数阈值,将该待确认元素存储到死信队列,以及将该待确认元素从上述待确认队列中删除,响应于确定上述反馈信息表征上述标识信息已被确认,将上述待确认元素从上述待确认队列中删除。In some embodiments, the above-mentioned storage unit further includes: a third deletion unit, configured to, for the to-be-confirmed element in the above-mentioned to-be-confirmed queue, send the identification information in the to-be-confirmed element to the client of the communication connection, and receive from the to-be-confirmed element. The feedback information sent by the above-mentioned client for the above-mentioned identification information, in response to determining that the above-mentioned identification information is not confirmed according to the above-mentioned feedback information, the number of retries in the element to be confirmed is increased by a predetermined value, in response to determining that the element to be confirmed is in the element. The difference between the time corresponding to the time information and the current time is less than or equal to the preset duration, determine whether the number of retries in the element to be confirmed is greater than the threshold of the number of retries, and in response to determining that the number of retries is greater than the threshold of the number of retries, the The element to be confirmed is stored in the dead letter queue, and the element to be confirmed is deleted from the queue to be confirmed. In response to determining that the feedback information indicates that the identification information has been confirmed, the element to be confirmed is deleted from the queue to be confirmed. .

第三方面,本申请实施例提供了一种服务器,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如用于存储信息的方法中任一实施例的方法。In a third aspect, an embodiment of the present application provides a server, including: one or more processors; a storage device on which one or more programs are stored, and when the one or more programs are executed by the one or more processors , causing one or more processors to implement the method of any one of the embodiments of the method for storing information.

第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如用于存储信息的方法中任一实施例的方法。In a fourth aspect, an embodiment of the present application provides a computer-readable medium on which a computer program is stored, and when the program is executed by a processor, implements the method in any one of the embodiments of the method for storing information.

本申请实施例提供的用于存储信息的方法和装置,首先,接收至少一个待存储标识信息。然后,从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素,确定上述目标队列的队列长度是否小于长度阈值;响应于确定是,将所生成的队列元素存储到上述目标队列;响应于确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;响应于确定不存在,输出上述队列组。本实施例的方法和装置,通过将队列组中的目标队列中不包括的待存储标识信息存储到目标队列或新队列并将新队列添加到队列组中,以使得队列内的队列元素不具有相同的标识信息,可以实现队列内的去重效果,有助于节省存储空间。For the method and apparatus for storing information provided by the embodiments of the present application, firstly, at least one piece of identification information to be stored is received. Then, select the identification information to be stored from the above at least one identification information to be stored, and perform the following storage steps: in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate the selected identification information to be stored. the queue elements of the identification information and the time information of the current time, determine whether the queue length of the above-mentioned target queue is less than the length threshold; in response to determining yes, store the generated queue elements in the above-mentioned target queue; in response to determining no, establish a new queue, The generated queue element is stored in the above-mentioned new queue, the above-mentioned new queue is added to the above-mentioned queue group, and the above-mentioned new queue is determined as the target queue; It is determined whether there is unselected identification information to be stored in the at least one identification information to be stored ; in response to determining that it does not exist, output the above queue group. In the method and device of this embodiment, the identification information to be stored that is not included in the target queue in the queue group is stored in the target queue or the new queue and the new queue is added to the queue group, so that the queue elements in the queue do not have The same identification information can achieve the effect of deduplication in the queue, which helps to save storage space.

附图说明Description of drawings

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:Other features, objects and advantages of the present application will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings:

图1是本申请的一个实施例可以应用于其中的示例性系统架构图;FIG. 1 is an exemplary system architecture diagram to which an embodiment of the present application may be applied;

图2是根据本申请的用于存储信息的方法的一个实施例的流程图;Figure 2 is a flowchart of one embodiment of a method for storing information according to the present application;

图3是根据本申请实施例的用于存储信息的方法的一个应用场景的示意图;3 is a schematic diagram of an application scenario of the method for storing information according to an embodiment of the present application;

图4是根据本申请的用于存储信息的方法的又一个实施例的流程图;Figure 4 is a flowchart of yet another embodiment of a method for storing information according to the present application;

图5是根据本申请的用于存储信息的装置的一个实施例的结构示意图;5 is a schematic structural diagram of an embodiment of an apparatus for storing information according to the present application;

图6是适于用来实现本申请实施例的服务器的计算机系统的结构示意图。FIG. 6 is a schematic structural diagram of a computer system suitable for implementing the server of the embodiment of the present application.

具体实施方式Detailed ways

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。The present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the related invention, but not to limit the invention. In addition, it should be noted that, for the convenience of description, only the parts related to the related invention are shown in the drawings.

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。It should be noted that the embodiments in the present application and the features of the embodiments may be combined with each other in the case of no conflict. The present application will be described in detail below with reference to the accompanying drawings and in conjunction with the embodiments.

图1示出了可以应用本申请实施例的用于存储信息的方法或用于存储信息的装置的示例性系统架构100。FIG. 1 shows an exemplary system architecture 100 of a method for storing information or an apparatus for storing information to which embodiments of the present application may be applied.

如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。As shown in FIG. 1 , the system architecture 100 may include terminal devices 101 , 102 , and 103 , a network 104 and a server 105 . The network 104 is a medium used to provide a communication link between the terminal devices 101 , 102 , 103 and the server 105 . The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.

终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种应用,例如购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件、文本编辑类应用、浏览器类应用、阅读类应用等。The terminal devices 101, 102, and 103 interact with the server 105 through the network 104 to receive or send messages and the like. Various applications can be installed on the terminal devices 101 , 102 and 103 , such as shopping applications, search applications, instant messaging tools, email clients, social platform software, text editing applications, browser applications, reading applications, etc. .

终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供购物类服务),也可以实现成单个软件或软件模块。在此不做具体限定。The terminal devices 101, 102, and 103 may be hardware or software. When the terminal devices 101, 102, and 103 are hardware, they can be various electronic devices, including but not limited to smart phones, tablet computers, e-book readers, laptop computers, desktop computers, and the like. When the terminal devices 101, 102, and 103 are software, they can be installed in the electronic devices listed above. It can be implemented as a plurality of software or software modules (for example, used to provide shopping services), or can be implemented as a single software or software module. There is no specific limitation here.

服务器105可以是提供各种服务的服务器,例如为终端设备101、102、103上应用的信息存储服务器。信息存储服务器可以响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素,并存储所生成的队列元素,以及输出该队列组。The server 105 may be a server that provides various services, such as an information storage server applied on the terminal devices 101 , 102 , and 103 . The information storage server may, in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate a queue element including the selected identification information to be stored and the time information of the current time, and store the generated queue element , and output the queue group.

需要说明的是,本申请实施例所提供的用于存储信息的方法一般由服务器105执行,相应地,用于存储信息的装置一般设置于服务器105中。It should be noted that the method for storing information provided by the embodiments of the present application is generally executed by the server 105 , and accordingly, the apparatus for storing information is generally set in the server 105 .

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。It should be understood that the numbers of terminal devices, networks and servers in FIG. 1 are merely illustrative. There can be any number of terminal devices, networks and servers according to implementation needs.

继续参考图2,示出了根据本申请的用于存储信息的方法的一个实施例的流程200。该用于存储信息的方法,包括以下步骤:With continued reference to FIG. 2, a flow 200 of one embodiment of a method for storing information according to the present application is shown. The method for storing information includes the following steps:

步骤201,接收至少一个待存储标识信息。Step 201: Receive at least one identification information to be stored.

在本实施例中,用于存储信息的方法的执行主体(例如图1所示的服务器105)可以通过多种方式来接收待存储标识信息。例如,执行主体可以直接从通信连接的客户端(例如图1所示的终端设备101、102、103)接收存储于其中的待存储标识信息。再例如,执行主体可以通过有线连接方式或无线连接方式,从数据库服务器(图1中未示出)接收存储于其中的待存储标识信息。In this embodiment, the execution body of the method for storing information (for example, the server 105 shown in FIG. 1 ) may receive the identification information to be stored in various ways. For example, the execution subject may directly receive the identification information to be stored stored therein from the client (eg, the terminal devices 101 , 102 , and 103 shown in FIG. 1 ) connected in communication. For another example, the execution body may receive the identification information to be stored stored in the database server (not shown in FIG. 1 ) through a wired connection or a wireless connection.

在本实施例中,标识信息可以包括用于识别的各种符号,例如,编号。待存储标识信息表征待存储的用于识别的各种符号。In this embodiment, the identification information may include various symbols for identification, such as numbers. The identification information to be stored represents various symbols to be stored for identification.

步骤202,从至少一个待存储标识信息中选取待存储标识信息。Step 202: Select identification information to be stored from at least one identification information to be stored.

在本实施例中,执行主体可以从步骤201中接收的至少一个待存储标识信息中选取待存储标识信息,以及执行步骤203至步骤208的存储步骤。其中,待存储标识信息的选取方式在本申请中并不限制。例如可以是随机选取待存储标识信息,也可以对至少一个待存储标识信息中的待存储标识信息进行排序以按顺序从中选取待存储标识信息。In this embodiment, the execution subject may select the identification information to be stored from the at least one identification information to be stored received in step 201 , and execute the storage steps from step 203 to step 208 . The selection method of the identification information to be stored is not limited in this application. For example, the identification information to be stored may be randomly selected, or the identification information to be stored in the at least one identification information to be stored may be sorted to select the identification information to be stored in sequence.

步骤203,响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素。Step 203, in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate a queue element including the selected identification information to be stored and time information of the current time.

在本实施例中,队列组是由若干个队列组成的队列组。队列是由若干个队列元素组成的。队列元素包括标识信息和时间信息。目标队列可以是队列组中指定的队列,例如,最新建立的当前队列。需要指出的是,队列组可以为空,此时,首先,新建一个队列作为目标队列并添加到队列组中,然后,再执行步骤203的内容。In this embodiment, the queue group is a queue group composed of several queues. A queue is composed of several queue elements. Queue elements include identification information and time information. The target queue may be the queue specified in the queue group, eg, the latest established current queue. It should be pointed out that the queue group may be empty. In this case, first, a new queue is created as a target queue and added to the queue group, and then the content of step 203 is executed.

在本实施例中,目标队列中不包括所选取的待存储标识信息是指目标队列中的队列元素中不包括所选取的待存储标识信息。In this embodiment, the fact that the selected identification information to be stored is not included in the target queue means that the selected identification information to be stored is not included in the queue elements in the target queue.

在本实施例中,当前时间的时间信息可以是用于指示当前时刻的时间的各种信息。作为示例,时间信息可以是精确到纳秒的时间数据。In this embodiment, the time information of the current time may be various information used to indicate the time of the current moment. As an example, the time information may be time data accurate to nanoseconds.

步骤204,确定目标队列的队列长度是否小于长度阈值。Step 204: Determine whether the queue length of the target queue is less than a length threshold.

在本实施例中,队列长度是指队列中元素的个数。长度阈值可以是技术人员预先设定的数据值,例如,长度阈值可以为100000。In this embodiment, the queue length refers to the number of elements in the queue. The length threshold may be a data value preset by a technician, for example, the length threshold may be 100,000.

步骤205,响应于确定是,将所生成的队列元素存储到目标队列。Step 205, in response to determining yes, store the generated queue element to the target queue.

在本实施例中,上述将所生成的队列元素存储到目标队列是指将队列元素添加到目标队列。In this embodiment, the above-mentioned storing the generated queue elements in the target queue refers to adding the queue elements to the target queue.

步骤206,响应于确定否,建立新队列,将所生成的队列元素存储到新队列,将新队列加入队列组,将新队列确定为目标队列。Step 206 , in response to determining No, establish a new queue, store the generated queue elements in the new queue, add the new queue to the queue group, and determine the new queue as the target queue.

在本实施例中,执行主体将队列元素添加到新队列。然后,将新队列添加到队列组中。之后,将新队列作为新的目标队列。In this embodiment, the execution body adds queue elements to the new queue. Then, add the new queue to the queue group. After that, use the new queue as the new target queue.

步骤207,确定至少一个待存储标识信息中是否存在未被选取过的待存储标识信息。Step 207: Determine whether there is unselected identification information to be stored in the at least one identification information to be stored.

在本实施例中,若执行主体确定至少一个待存储标识信息中不存在未被选取过的待存储标识信息,则可以继续执行步骤208。若执行主体确定至少一个待存储标识信息中存在未被选取过的待存储标识信息,则可以从上述至少一个待存储标识信息中重新选取未被选取过的待存储标识信息,继续执行上述存储步骤。In this embodiment, if the execution subject determines that there is no unselected identification information to be stored in the at least one identification information to be stored, step 208 may be continued. If the execution body determines that there is unselected identification information to be stored in the at least one identification information to be stored, it can reselect the identification information to be stored that has not been selected from the at least one identification information to be stored, and continue to perform the above storage step .

步骤208,响应于确定不存在,输出队列组。Step 208, in response to determining that it does not exist, output the queue group.

在本实施例中,输出的方式可以是执行主体将队列组存储在本地,也可以是将其发送给上述终端设备或数据库服务器。In this embodiment, the output method may be that the execution body stores the queue group locally, or may send it to the above-mentioned terminal device or database server.

在本实施例的一些可选的实现方式中,在上述响应于确定不存在,输出上述队列组之后,上述存储步骤还包括:删除上述队列组中除上述目标队列以外的队列中的、与上述目标队列中的队列元素相同的元素。In some optional implementations of this embodiment, after outputting the queue group in response to determining that it does not exist, the storing step further includes: deleting the queues in the queue group other than the target queue that are the same as the above-mentioned queues. The same element as the queue element in the target queue.

具体地,对于上述目标队列中的队列元素,对于上述队列组中的除上述目标队列以外的队列,确定该队列中是否存在上述队列元素中的标识信息;响应于确定该队列中存在该标识信息,将该标识信息从该队列中删除。Specifically, for a queue element in the above-mentioned target queue, for a queue in the above-mentioned queue group other than the above-mentioned target queue, determine whether the identification information in the above-mentioned queue element exists in the queue; in response to determining that the identification information exists in the queue , delete the identification information from the queue.

通过上述删除上述队列组中除上述目标队列以外的队列中的、与上述目标队列中的队列元素相同的元素的步骤,可以对队列组内的队列元素进行队列间去重,进一步去重可以进一步节省存储空间。Through the above-mentioned step of deleting the same elements in the queues in the above-mentioned queue group as the queue elements in the above-mentioned target queue in the queues other than the above-mentioned target queue, the queue elements in the queue group can be deduplicated between queues, and further deduplication can further Save storage space.

进一步参见图3,图3是根据本实施例的用于存储信息的方法的一个应用场景的示意图。Referring further to FIG. 3 , FIG. 3 is a schematic diagram of an application scenario of the method for storing information according to this embodiment.

在图3的应用场景中,对终端设备301中的购物类应用提供后台支持的服务器302可以运行用于存储信息的方法,包括:In the application scenario of FIG. 3 , the server 302 that provides background support for shopping applications in the terminal device 301 can run a method for storing information, including:

首先,服务器302可以接收终端设备301的至少一个编号信息{1001}。之后,服务器302可以从上述至少一个编号信息{1001}中选取1001,以及执行以下存储步骤:服务器302响应于确定队列组303中的当前队列{(1003,11:10:20),(1004,11:10:21),(1005,11:10:22),(1006,11:10:23)}3031中不包括1001,生成包括1001以及当前时间15:10:20的队列元素(1001,15:10:20),确定上述当前队列3031的队列长度是否小于长度阈值5。服务器302响应于确定是,将所生成的队列元素(1001,15:10:20)存储到上述当前队列{(1003,11:10:20),(1004,11:10:21),(1005,11:10:22),(1006,11:10:23),(1001,15:10:20)}3031。确定上述至少一个编号信息{1001}中是否存在未被选取过的编号信息。响应于确定不存在,将上述队列组存储到数据库服务器304。First, the server 302 may receive at least one number information {1001} of the terminal device 301 . After that, the server 302 can select 1001 from the above at least one number information {1001}, and perform the following storage step: the server 302 determines the current queue in the queue group 303 in response to {(1003, 11:10:20), (1004, 11:10:21), (1005, 11:10:22), (1006, 11:10:23)} 3031 does not include 1001, and generates a queue element that includes 1001 and the current time 15:10:20 (1001, 15:10:20), determine whether the queue length of the current queue 3031 is less than the length threshold 5. In response to determining yes, the server 302 stores the generated queue element (1001, 15:10:20) to the above current queue {(1003, 11:10:20), (1004, 11:10:21), (1005) , 11:10:22), (1006, 11:10:23), (1001, 15:10:20)}3031. Determine whether there is unselected number information in the at least one number information {1001}. In response to determining that it does not exist, the queue group described above is stored to the database server 304 .

本实施例中用于存储信息的方法,通过服务器302接收至少一个待存储标识信息。之后,服务器302可以从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:如果服务器302确定队列组中的目标队列中不包括所选取的待存储标识信息,则生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素,以及确定上述目标队列的队列长度是否小于长度阈值;然后,如果服务器302确定是,将所生成的队列元素存储到上述目标队列;如果服务器302确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;如果服务器302确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;如果确定不存在,那么服务器302输出上述队列组。本实施例中的用于存储信息的方法丰富了对信息的存储方式,通过对队列内的元素进行去重,可以节省存储空间,有利于后续对队列中的标识信息进行处理时,降低重复处理次数,从而有助于提高后续处理过程的效率。In the method for storing information in this embodiment, the server 302 receives at least one identification information to be stored. Afterwards, the server 302 can select the identification information to be stored from the above-mentioned at least one identification information to be stored, and perform the following storage steps: if the server 302 determines that the selected identification information to be stored is not included in the target queue in the queue group, then generate the identification information including The selected queue element to be stored identification information and the time information of the current time, and determine whether the queue length of the above-mentioned target queue is less than the length threshold; Then, if the server 302 determines that it is, the generated queue element is stored in the above-mentioned target queue; If the server 302 determines No, establish a new queue, store the generated queue elements in the above-mentioned new queue, add the above-mentioned new queue to the above-mentioned queue group, and determine the above-mentioned new queue as the target queue; If the server 302 determines that the above-mentioned at least one identifier to be stored is Whether there is unselected identification information to be stored in the information; if it is determined that it does not exist, the server 302 outputs the above queue group. The method for storing information in this embodiment enriches the way of storing information. By de-duplicating elements in the queue, storage space can be saved, which is beneficial to reduce repeated processing when the identification information in the queue is subsequently processed. times, thereby helping to improve the efficiency of subsequent processing.

进一步参考图4,其示出了用于存储信息的方法的又一个实施例的流程400。该用于存储信息的方法的流程400,包括以下步骤:With further reference to Figure 4, a flow 400 of yet another embodiment of a method for storing information is shown. The process 400 of the method for storing information includes the following steps:

步骤401,接收至少一个待存储标识信息。Step 401: Receive at least one identification information to be stored.

步骤402,从至少一个待存储标识信息中选取待存储标识信息。Step 402: Select identification information to be stored from at least one identification information to be stored.

步骤403,响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素。Step 403, in response to determining that the target queue in the queue group does not include the selected identification information to be stored, a queue element including the selected identification information to be stored and time information of the current time is generated.

步骤404,确定目标队列的队列长度是否小于长度阈值。Step 404: Determine whether the queue length of the target queue is less than a length threshold.

步骤405,响应于确定是,将所生成的队列元素存储到目标队列。Step 405, in response to determining yes, store the generated queue element to the target queue.

步骤406,响应于确定否,建立新队列,将所生成的队列元素存储到新队列,将新队列加入队列组,将新队列确定为目标队列。Step 406, in response to determining no, establish a new queue, store the generated queue elements in the new queue, add the new queue to the queue group, and determine the new queue as the target queue.

步骤407,确定至少一个待存储标识信息中是否存在未被选取过的待存储标识信息。Step 407: Determine whether there is unselected identification information to be stored in the at least one identification information to be stored.

步骤408,响应于确定不存在,输出队列组。Step 408, in response to determining that it does not exist, output the queue group.

在本实施例中,步骤401-408的具体操作与图2所示的实施例中步骤201-208的操作基本相同,在此不再赘述。In this embodiment, the specific operations of steps 401 to 408 are basically the same as the operations of steps 201 to 208 in the embodiment shown in FIG. 2 , and details are not repeated here.

步骤409,从目标队列中顺序获取预设数目个的队列元素,对于所获取的预设数目个的队列元素中的队列元素,基于预设的重试次数、该队列元素中的标识信息和时间信息生成待确认元素,将所生成的待确认元素添加到待确认队列,将该队列元素从目标队列中删除。Step 409, sequentially acquire a preset number of queue elements from the target queue, and for the acquired queue elements in the preset number of queue elements, based on the preset number of retries, the identification information and time in the queue elements The information generates a to-be-confirmed element, adds the generated to-be-confirmed element to the to-be-confirmed queue, and deletes the queue element from the target queue.

在本实施例中,上述顺序获取是指按照队列的顺序进行获取。上述预设数目可以根据实际需要进行设定,例如,10。上述预设的重试次数可以根据实际需要进行设定,例如,0。上述待确认元素包括重试次数、标识信息和时间信息三个属性。其中,上述待确认元素中的标识信息用于消费,若已消费上述待确认元素中的标识信息,那么,执行主体将接收到确认消费的信息,则表示上述待确认元素已被确认。上述待确认队列是用于存储待确认元素的队列,上述待确认队列在初始化时可以为空。上述“消费”通常是指数据库中的消息队列的消费。In this embodiment, the above-mentioned order acquisition refers to the acquisition in the order of the queue. The above preset number can be set according to actual needs, for example, 10. The above preset number of retries can be set according to actual needs, for example, 0. The above element to be confirmed includes three attributes: the number of retries, identification information and time information. The identification information in the above elements to be confirmed is used for consumption. If the identification information in the above elements to be confirmed has been consumed, the execution subject will receive the information to confirm the consumption, which means that the above elements to be confirmed have been confirmed. The above-mentioned queue to be confirmed is a queue for storing elements to be confirmed, and the above-mentioned queue to be confirmed may be empty during initialization. The above "consumption" usually refers to the consumption of the message queue in the database.

在本实施例的一些可选的实现方式中,上述存储步骤还可以包括:对于上述待确认队列中的待确认元素,将该待确认元素中的标识信息发送给通信连接的客户端,接收从上述客户端发送的、针对上述标识信息的反馈信息,响应于根据上述反馈信息确定上述标识信息未被确认,将该待确认元素中的重试次数增加预定值,响应于确定该待确认元素中的时间信息对应的时刻与当前时刻的差值小于或等于预设时长,确定该待确认元素中的重试次数是否大于重试次数阈值,响应于确定上述重试次数大于重试次数阈值,将该待确认元素存储到死信队列,以及将该待确认元素从上述待确认队列中删除,响应于确定上述反馈信息表征上述标识信息已被确认,将上述待确认元素从上述待确认队列中删除。上述预定值可以根据实际需要进行设定,例如,1。预设时长可以根据实际需要进行设定,例如,2小时。重试次数阈值可以根据实际需要进行设定,例如,10。上述死信队列通常包括用来保存处理失败或者过期的消息的队列。上述标识信息已被确认通常是指上述标识信息已被客户端处理成功。在数据库技术领域,上述待确认队列可以理解为待消费队列。上述反馈信息可以理解为是否被已被消费的信息。In some optional implementation manners of this embodiment, the above-mentioned storing step may further include: for the to-be-confirmed element in the above-mentioned to-be-confirmed queue, sending the identification information in the to-be-confirmed element to the client of the communication connection, and receiving the information from the to-be-confirmed element. The feedback information sent by the above-mentioned client for the above-mentioned identification information, in response to determining that the above-mentioned identification information is not confirmed according to the above-mentioned feedback information, the number of retries in the element to be confirmed is increased by a predetermined value, in response to determining that the element to be confirmed is in the element. The difference between the time corresponding to the time information and the current time is less than or equal to the preset duration, determine whether the number of retries in the element to be confirmed is greater than the threshold of the number of retries, and in response to determining that the number of retries is greater than the threshold of the number of retries, the The element to be confirmed is stored in the dead letter queue, and the element to be confirmed is deleted from the queue to be confirmed. In response to determining that the feedback information indicates that the identification information has been confirmed, the element to be confirmed is deleted from the queue to be confirmed. . The above predetermined value can be set according to actual needs, for example, 1. The preset duration can be set according to actual needs, for example, 2 hours. The threshold for the number of retries can be set according to actual needs, for example, 10. The above-mentioned dead-letter queue usually includes a queue for storing failed or expired messages. The above identification information has been confirmed usually means that the above identification information has been successfully processed by the client. In the field of database technology, the above queue to be confirmed can be understood as a queue to be consumed. The above feedback information can be understood as the information whether it has been consumed.

可选地,响应于确定上述重试次数小于或等于重试次数阈值,将该待确认元素的时间信息修改给当前时间,并存储到下一个待确认队列。其中,上述当前时间可以是用于指示当前时刻的各种时间信息。作为示例,时间信息可以是精确到纳秒的时间数据。Optionally, in response to determining that the number of retries is less than or equal to the threshold of the number of retries, the time information of the element to be confirmed is modified to the current time, and stored in the next queue to be confirmed. Wherein, the above-mentioned current time may be various time information used to indicate the current time. As an example, the time information may be time data accurate to nanoseconds.

从图4中可以看出,与图2对应的实施例相比,本实施例中的用于存储信息的方法的流程400突出了对基于预设的重试次数和目标队列的队列元素生成待确认元素,以及将待确认元素添加到待确认队列,然后,将该队列元素从目标队列中删除的步骤。由此,本实施例描述的方案可以在图2所示的实施例得到的队列组的基础上,将队列元素进行应用到待确认队列中。该应用过程中将已生成待确认元素的队列元素从目标队列中删除,不会重复使用目标队列中的队列元素,因此有助于提高该待确认队列的可靠性。It can be seen from FIG. 4 that, compared with the embodiment corresponding to FIG. 2 , the process 400 of the method for storing information in this embodiment highlights the generation of queue elements based on the preset number of retries and the target queue. Acknowledging an element, and adding a pending element to the pending queue, and then removing the queue element from the target queue. Therefore, the solution described in this embodiment can apply queue elements to the queue to be confirmed on the basis of the queue group obtained in the embodiment shown in FIG. 2 . In the application process, the queue elements that have generated the elements to be confirmed are deleted from the target queue, and the queue elements in the target queue will not be reused, thus helping to improve the reliability of the to-be-confirmed queue.

进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于存储信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。With further reference to FIG. 5 , as an implementation of the methods shown in the above figures, the present application provides an embodiment of an apparatus for storing information. The apparatus embodiment corresponds to the method embodiment shown in FIG. 2 . The device can be specifically applied to various electronic devices.

如图5所示,本实施例上述的用于存储信息的装置500包括:接收单元501,被配置成接收至少一个待存储标识信息;存储单元502,被配置成从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素;确定上述目标队列的队列长度是否小于长度阈值;响应于确定是,将所生成的队列元素存储到上述目标队列;响应于确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;响应于确定不存在,输出上述队列组。As shown in FIG. 5 , the above-mentioned apparatus 500 for storing information in this embodiment includes: a receiving unit 501 configured to receive at least one identification information to be stored; and a storage unit 502 configured to receive at least one identification information to be stored from the above-mentioned at least one identification information Select the identification information to be stored in the middle, and perform the following storage steps: in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate a queue that includes the selected identification information to be stored and the time information of the current time element; determine whether the queue length of the above-mentioned target queue is less than the length threshold; in response to determining yes, store the generated queue elements in the above-mentioned target queue; in response to determining no, establish a new queue, and store the generated queue elements in the above-mentioned new queue. Queue, adding the above-mentioned new queue to the above-mentioned queue group, and determining the above-mentioned new queue as a target queue; determining whether there is unselected identification information to be stored in the at least one identification information to be stored; in response to determining that it does not exist, output the above-mentioned queue Group.

在本实施例的一些可选的实现方式中,上述装置还包括:继续单元(图5中未示出),被配置成响应于确定上述至少一个待存储标识信息中存在未被选取过的待存储标识信息,从上述至少一个待存储标识信息中重新选取未被选取过的待存储标识信息,继续执行上述存储步骤。In some optional implementations of this embodiment, the above-mentioned apparatus further includes: a continuation unit (not shown in FIG. 5 ), configured to respond to determining that there is an unselected pending identification information in the at least one identification information to be stored The identification information is stored, the identification information to be stored that has not been selected is reselected from the at least one identification information to be stored, and the above storage step is continued.

在本实施例的一些可选的实现方式中,上述存储单元还包括:第一删除单元(图5中未示出),被配置成删除上述队列组中除上述目标队列以外的队列中的、与上述目标队列中的队列元素相同的元素。In some optional implementations of this embodiment, the above-mentioned storage unit further includes: a first deletion unit (not shown in FIG. 5 ), configured to delete, The same element as the queue element in the target queue above.

在本实施例的一些可选的实现方式中,上述存储单元还包括:第二删除单元(图5中未示出),被配置成从上述目标队列中顺序获取预设数目个的队列元素,对于所获取的预设数目个的队列元素中的队列元素,基于预设的重试次数、该队列元素中的标识信息和时间信息生成待确认元素,将所生成的待确认元素添加到待确认队列,将该队列元素从上述目标队列中删除。In some optional implementations of this embodiment, the above-mentioned storage unit further includes: a second deletion unit (not shown in FIG. 5 ), configured to sequentially acquire a preset number of queue elements from the above-mentioned target queue, For the acquired queue elements in the preset number of queue elements, generate the to-be-confirmed elements based on the preset number of retries, the identification information and time information in the queue elements, and add the generated to-be-confirmed elements to the to-be-confirmed elements Queue, delete the queue element from the above target queue.

可选地,上述存储单元还包括:第三删除单元(图5中未示出),被配置成对于上述待确认队列中的待确认元素,将该待确认元素中的标识信息发送给通信连接的客户端,接收从上述客户端发送的、针对上述标识信息的反馈信息,响应于根据上述反馈信息确定上述标识信息未被确认,将该待确认元素中的重试次数增加预定值,响应于确定该待确认元素中的时间信息对应的时刻与当前时刻的差值小于或等于预设时长,确定该待确认元素中的重试次数是否大于重试次数阈值,响应于确定上述重试次数大于重试次数阈值,将该待确认元素存储到死信队列,以及将该待确认元素从上述待确认队列中删除,响应于确定上述反馈信息表征上述标识信息已被确认,将上述待确认元素从上述待确认队列中删除。Optionally, the above-mentioned storage unit also includes: a third deletion unit (not shown in FIG. 5 ), configured to send the identification information in the to-be-confirmed element to the communication connection for the to-be-confirmed element in the above-mentioned to-be-confirmed queue the client, receives the feedback information for the above identification information sent from the above client, in response to determining that the above identification information is not confirmed according to the above feedback information, increases the number of retries in the element to be confirmed by a predetermined value, in response to Determine whether the difference between the time corresponding to the time information in the element to be confirmed and the current time is less than or equal to the preset duration, determine whether the number of retries in the element to be confirmed is greater than the threshold of the number of retries, in response to determining that the number of retries is greater than The threshold of the number of retries, the element to be confirmed is stored in the dead letter queue, and the element to be confirmed is deleted from the above-mentioned queue to be confirmed. Deleted from the queue to be confirmed above.

本申请的上述实施例提供的装置,接收单元501被配置成接收至少一个待存储标识信息。存储单元502,被配置成从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:首先,响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素;然后,确定上述目标队列的队列长度是否小于长度阈值;之后,响应于确定是,将所生成的队列元素存储到上述目标队列;然后,响应于确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;之后,确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;最后,响应于确定不存在,输出上述队列组。从而能够得到队列内去重的队列组,丰富了消息队列的去重方式,节省了存储空间,有助于提高消息队列应用时的效率。In the apparatus provided by the above embodiments of the present application, the receiving unit 501 is configured to receive at least one piece of identification information to be stored. The storage unit 502 is configured to select the identification information to be stored from the above-mentioned at least one identification information to be stored, and execute the following storage steps: first, in response to determining that the target queue in the queue group does not include the selected identification information to be stored, Generate a queue element including the selected identification information to be stored and the time information of the current time; Then, determine whether the queue length of the above-mentioned target queue is less than the length threshold; Afterwards, in response to determining that, the generated queue element is stored in the above-mentioned target Then, in response to determining No, establish a new queue, store the generated queue elements in the above-mentioned new queue, add the above-mentioned new queue to the above-mentioned queue group, and determine the above-mentioned new queue as the target queue; Whether there is unselected identification information to be stored in the stored identification information; finally, in response to determining that it does not exist, the above-mentioned queue group is output. In this way, the deduplication queue group in the queue can be obtained, the deduplication method of the message queue is enriched, the storage space is saved, and the efficiency of the application of the message queue is improved.

下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机系统600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。Referring to FIG. 6 below, it shows a schematic structural diagram of a computer system 600 suitable for implementing the server of the embodiment of the present application. The server shown in FIG. 6 is only an example, and should not impose any limitations on the functions and scope of use of the embodiments of the present application.

如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。As shown in FIG. 6, a computer system 600 includes a central processing unit (CPU) 601, which can be loaded into a random access memory (RAM) 603 according to a program stored in a read only memory (ROM) 602 or a program from a storage section 608 Instead, various appropriate actions and processes are performed. In the RAM 603, various programs and data necessary for the operation of the system 600 are also stored. The CPU 601 , the ROM 602 , and the RAM 603 are connected to each other through a bus 604 . An input/output (I/O) interface 605 is also connected to bus 604 .

以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。The following components are connected to the I/O interface 605: an input section 606 including a keyboard, a mouse, etc.; an output section 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 608 including a hard disk, etc. ; and a communication section 609 including a network interface card such as a LAN card, a modem, and the like. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the I/O interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is mounted on the drive 610 as needed so that a computer program read therefrom is installed into the storage section 608 as needed.

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。In particular, according to embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the method illustrated in the flowchart. In such an embodiment, the computer program may be downloaded and installed from the network via the communication portion 609 and/or installed from the removable medium 611 . When the computer program is executed by the central processing unit (CPU) 601, the above-described functions defined in the method of the present application are performed.

需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。It should be noted that the computer-readable medium described in this application may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two. The computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or a combination of any of the above. More specific examples of computer readable storage media may include, but are not limited to, electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable Programmable read only memory (EPROM or flash memory), fiber optics, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。In this application, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this application, however, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code therein. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing. A computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device . Program code embodied on a computer readable medium may be transmitted using any suitable medium including, but not limited to, wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more functions for implementing the specified logical function(s) executable instructions. It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It is also noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented in dedicated hardware-based systems that perform the specified functions or operations , or can be implemented in a combination of dedicated hardware and computer instructions.

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元和存储单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收至少一个待存储标识信息的单元”。The units involved in the embodiments of the present application may be implemented in a software manner, and may also be implemented in a hardware manner. The described unit can also be provided in the processor, for example, it can be described as: a processor includes a receiving unit and a storage unit. Wherein, the names of these units do not constitute a limitation on the unit itself under certain circumstances, for example, the receiving unit may also be described as "receiving at least one unit of identification information to be stored".

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:接收至少一个待存储标识信息;从上述至少一个待存储标识信息中选取待存储标识信息,以及执行如下存储步骤:响应于确定队列组中的目标队列中不包括所选取的待存储标识信息,生成包括所选取的待存储标识信息以及当前时间的时间信息的队列元素;确定上述目标队列的队列长度是否小于长度阈值;响应于确定是,将所生成的队列元素存储到上述目标队列;响应于确定否,建立新队列,将所生成的队列元素存储到上述新队列,将上述新队列加入上述队列组,将上述新队列确定为目标队列;确定上述至少一个待存储标识信息中是否存在未被选取过的待存储标识信息;响应于确定不存在,输出上述队列组。As another aspect, the present application also provides a computer-readable medium. The computer-readable medium may be included in the server described in the above embodiments, or may exist independently without being assembled into the server. The above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the server, the server is made to: receive at least one identification information to be stored; select the identification information to be stored from the at least one identification information to be stored Identification information, and perform the following storage steps: in response to determining that the target queue in the queue group does not include the selected identification information to be stored, generate a queue element that includes the selected identification information to be stored and the time information of the current time; determine the above Whether the queue length of the target queue is less than the length threshold; in response to determining yes, store the generated queue elements in the above-mentioned target queue; in response to determining no, establish a new queue, store the generated queue elements in the above-mentioned new queue, and store the above-mentioned queue elements in the above-mentioned new queue. The new queue is added to the above-mentioned queue group, and the above-mentioned new queue is determined as the target queue; it is determined whether there is unselected identification information to be stored in the at least one identification information to be stored; in response to determining that it does not exist, the above-mentioned queue group is output.

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。The above description is only a preferred embodiment of the present application and an illustration of the applied technical principles. Those skilled in the art should understand that the scope of the invention involved in this application is not limited to the technical solution formed by the specific combination of the above technical features, and should also cover the above technical features or Other technical solutions formed by any combination of its equivalent features. For example, a technical solution is formed by replacing the above-mentioned features with the technical features disclosed in this application (but not limited to) with similar functions.

Claims (12)

1. A method for storing information, comprising:
receiving at least one identification information to be stored;
selecting identification information to be stored from the at least one identification information to be stored, and executing the following storage steps: generating a queue element comprising the selected identification information to be stored and the time information of the current time in response to determining that the target queue in the queue group does not comprise the selected identification information to be stored; determining whether a queue length of the target queue is less than a length threshold; in response to determining yes, storing the generated queue element to the target queue; in response to determining no, establishing a new queue, storing the generated queue elements to the new queue, adding the new queue to the group of queues, and determining the new queue as a target queue; determining whether unselected identification information to be stored exists in the at least one identification information to be stored; in response to determining that there is no, outputting the set of queues.
2. The method of claim 1, wherein the method further comprises:
and in response to determining that the unselected identification information to be stored exists in the at least one identification information to be stored, reselecting the unselected identification information to be stored from the at least one identification information to be stored, and continuing to execute the storing step.
3. The method of any of claims 1-2, wherein after the outputting the set of queues in response to determining the absence, the storing step further comprises:
deleting the same queue elements in the queues in the queue group except the target queue as the queue elements in the target queue.
4. The method of any of claims 1-2, wherein after the outputting the set of queues in response to determining the absence, the storing step further comprises:
sequentially acquiring a preset number of queue elements from the target queue, generating elements to be confirmed based on a preset retry number, identification information in the queue elements and time information for the queue elements in the acquired preset number of queue elements, adding the generated elements to be confirmed to the queue to be confirmed, and deleting the queue elements from the target queue.
5. The method of claim 4, wherein the storing step further comprises:
for an element to be confirmed in the queue to be confirmed, sending identification information in the element to be confirmed to a client connected to communication, receiving feedback information sent from the client and aiming at the identification information, increasing a retry number in the element to be confirmed by a preset value in response to determining that the identification information is not confirmed according to the feedback information, determining whether the retry number in the element to be confirmed is larger than a retry number threshold value or not in response to determining that a difference value between a time corresponding to time information in the element to be confirmed and a current time is smaller than or equal to a preset time length, and storing the element to be confirmed into a dead mail queue in response to determining that the retry number is larger than the retry number threshold value, and deleting the element to be confirmed from the queue to be confirmed, and in response to determining that the feedback information represents that the identification information is confirmed, deleting the element to be confirmed from the queue to be confirmed.
6. An apparatus for storing information, comprising:
a receiving unit configured to receive at least one identification information to be stored;
a storage unit configured to select identification information to be stored from the at least one identification information to be stored, and perform the following storing steps: generating a queue element comprising the selected identification information to be stored and the time information of the current time in response to determining that the target queue in the queue group does not comprise the selected identification information to be stored; determining whether a queue length of the target queue is less than a length threshold; in response to determining yes, storing the generated queue element to the target queue; in response to determining no, establishing a new queue, storing the generated queue elements to the new queue, adding the new queue to the group of queues, and determining the new queue as a target queue; determining whether unselected identification information to be stored exists in the at least one identification information to be stored; in response to determining that there is no, outputting the set of queues.
7. The apparatus of claim 6, wherein the apparatus further comprises:
and a continuing unit configured to, in response to determining that the at least one piece of identification information to be stored does not have the identification information to be stored that is not selected, reselect the identification information to be stored that is not selected from the at least one piece of identification information to be stored, and continue to perform the storing step.
8. The apparatus of one of claims 6-7, wherein the storage unit further comprises:
a first deletion unit configured to delete an element in a queue other than the target queue in the queue group that is the same as a queue element in the target queue.
9. The apparatus of one of claims 6-7, wherein the storage unit further comprises:
a second deletion unit configured to sequentially acquire a preset number of queue elements from the target queue, generate an element to be confirmed based on a preset number of retries, identification information in the queue element, and time information for the queue element among the acquired preset number of queue elements, add the generated element to be confirmed to the queue to be confirmed, and delete the queue element from the target queue.
10. The apparatus of claim 9, wherein the storage unit further comprises:
a third deletion unit configured to, for an element to be confirmed in the queue to be confirmed, send identification information in the element to be confirmed to a communicatively connected client, receive feedback information sent from the client for the identification information, increase a number of retries in the element to be confirmed by a predetermined value in response to determining that the identification information is not confirmed according to the feedback information, determine whether the number of retries in the element to be confirmed is greater than a threshold number of retries in response to determining that a difference between a time corresponding to time information in the element to be confirmed and a current time is less than or equal to a preset time period, store the element to be confirmed in a dead mail queue in response to determining that the number of retries is greater than the threshold number of retries, and delete the element to be confirmed from the queue to be confirmed in response to determining that the feedback information indicates that the identification information has been confirmed, and deleting the element to be confirmed from the queue to be confirmed.
11. A server, comprising:
one or more processors;
a storage device having one or more programs stored thereon,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-5.
12. A computer-readable medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1-5.
CN201811553616.6A 2018-12-19 2018-12-19 Method and apparatus for storing information Pending CN111338810A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811553616.6A CN111338810A (en) 2018-12-19 2018-12-19 Method and apparatus for storing information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811553616.6A CN111338810A (en) 2018-12-19 2018-12-19 Method and apparatus for storing information

Publications (1)

Publication Number Publication Date
CN111338810A true CN111338810A (en) 2020-06-26

Family

ID=71183247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811553616.6A Pending CN111338810A (en) 2018-12-19 2018-12-19 Method and apparatus for storing information

Country Status (1)

Country Link
CN (1) CN111338810A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112346891A (en) * 2020-11-26 2021-02-09 北京沃东天骏信息技术有限公司 Message storage method, apparatus, device and computer readable medium
CN113590278A (en) * 2021-07-05 2021-11-02 杭州智家通科技有限公司 Method, device, equipment and storage medium for removing repeated execution task
CN113760876A (en) * 2021-02-08 2021-12-07 北京沃东天骏信息技术有限公司 A data filtering method and device
CN114422626A (en) * 2022-01-28 2022-04-29 北京秒如科技有限公司 Protocol transmission method, device and system
CN114518833A (en) * 2020-10-30 2022-05-20 伊姆西Ip控股有限责任公司 Method, electronic device and computer program product for storage management
CN114549072A (en) * 2022-02-18 2022-05-27 杭州网易云音乐科技有限公司 Data processing method, device, storage medium and computing equipment
CN114915663A (en) * 2022-03-21 2022-08-16 北京沃东天骏信息技术有限公司 Request response method, device, system, electronic equipment and medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101295267A (en) * 2008-05-30 2008-10-29 中兴通讯股份有限公司 Queue management method and device, computer system and computer readable medium
CN102340453A (en) * 2011-10-31 2012-02-01 航天恒星科技有限公司 A Scheduling Method for Variable Length Data Stream
CN103227747A (en) * 2012-03-14 2013-07-31 微软公司 High density hosting for messaging service
CN106250250A (en) * 2016-08-09 2016-12-21 广州唯品会信息科技有限公司 Data communications method and device
CN106330766A (en) * 2016-08-16 2017-01-11 中国银联股份有限公司 Message transmitting method and apparatus
CN107943562A (en) * 2017-11-14 2018-04-20 广东欧珀移动通信有限公司 Information storage method, device, storage medium and electronic equipment
CN108073355A (en) * 2016-11-15 2018-05-25 杭州海康威视数字技术股份有限公司 A kind of data storage and delet method and device
CN108933993A (en) * 2018-07-03 2018-12-04 平安科技(深圳)有限公司 Short message buffer queue selection method, device, computer equipment and storage medium
CN108965164A (en) * 2017-05-17 2018-12-07 北京京东尚科信息技术有限公司 Service request repeating method, device and readable storage medium storing program for executing based on message queue

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101295267A (en) * 2008-05-30 2008-10-29 中兴通讯股份有限公司 Queue management method and device, computer system and computer readable medium
CN102340453A (en) * 2011-10-31 2012-02-01 航天恒星科技有限公司 A Scheduling Method for Variable Length Data Stream
CN103227747A (en) * 2012-03-14 2013-07-31 微软公司 High density hosting for messaging service
CN106250250A (en) * 2016-08-09 2016-12-21 广州唯品会信息科技有限公司 Data communications method and device
CN106330766A (en) * 2016-08-16 2017-01-11 中国银联股份有限公司 Message transmitting method and apparatus
CN108073355A (en) * 2016-11-15 2018-05-25 杭州海康威视数字技术股份有限公司 A kind of data storage and delet method and device
CN108965164A (en) * 2017-05-17 2018-12-07 北京京东尚科信息技术有限公司 Service request repeating method, device and readable storage medium storing program for executing based on message queue
CN107943562A (en) * 2017-11-14 2018-04-20 广东欧珀移动通信有限公司 Information storage method, device, storage medium and electronic equipment
CN108933993A (en) * 2018-07-03 2018-12-04 平安科技(深圳)有限公司 Short message buffer queue selection method, device, computer equipment and storage medium

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114518833A (en) * 2020-10-30 2022-05-20 伊姆西Ip控股有限责任公司 Method, electronic device and computer program product for storage management
CN114518833B (en) * 2020-10-30 2024-05-03 伊姆西Ip控股有限责任公司 Method, electronic device and computer program product for storage management
CN112346891A (en) * 2020-11-26 2021-02-09 北京沃东天骏信息技术有限公司 Message storage method, apparatus, device and computer readable medium
CN113760876A (en) * 2021-02-08 2021-12-07 北京沃东天骏信息技术有限公司 A data filtering method and device
CN113590278A (en) * 2021-07-05 2021-11-02 杭州智家通科技有限公司 Method, device, equipment and storage medium for removing repeated execution task
CN114422626A (en) * 2022-01-28 2022-04-29 北京秒如科技有限公司 Protocol transmission method, device and system
CN114549072A (en) * 2022-02-18 2022-05-27 杭州网易云音乐科技有限公司 Data processing method, device, storage medium and computing equipment
CN114915663A (en) * 2022-03-21 2022-08-16 北京沃东天骏信息技术有限公司 Request response method, device, system, electronic equipment and medium

Similar Documents

Publication Publication Date Title
CN111338810A (en) Method and apparatus for storing information
US10585566B2 (en) Reproducing state of source environment when image was screen captured on a different computing device using resource location, resource navigation and positional metadata embedded in image
CN110555068B (en) Data export method and device
CN107665225A (en) Information-pushing method and device
US20200004464A1 (en) Method and apparatus for storing data
CN109829164B (en) Method and device for generating text
CN111104479A (en) Data labeling method and device
CN113760728B (en) Application testing method and device
EP3286665B1 (en) Rich attachment regeneration
CN113704222B (en) A method and device for processing a service request
CN113010405B (en) A method and device for testing an application program
CN108664510A (en) Information acquisition method and device
CN115167769B (en) Method, device and system for writing data
CN112836201A (en) Method, apparatus, device and computer-readable medium for multi-platform information exchange
CN116757752A (en) Method and device for determining delivery result, readable medium and electronic equipment
US10021054B1 (en) Implementing secured email
CN108804442B (en) Serial number generation method and device
CN113076256A (en) Pressure testing method and device
CN107045452B (en) Virtual machine scheduling method and device
CN114116675A (en) A data archiving method and device
CN114912111B (en) A cloud host virus detection method, device and system
CN107688978A (en) The method and device of sequence information is repeated for detecting
CN113535420A (en) A message processing method and device
CN111414566B (en) Method and device for pushing information
CN118210811A (en) Service processing method, device, electronic equipment and computer readable medium

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