WO2012093751A1 - System and method for performing distributed control of subscribe function of epcis - Google Patents

System and method for performing distributed control of subscribe function of epcis Download PDF

Info

Publication number
WO2012093751A1
WO2012093751A1 PCT/KR2011/001749 KR2011001749W WO2012093751A1 WO 2012093751 A1 WO2012093751 A1 WO 2012093751A1 KR 2011001749 W KR2011001749 W KR 2011001749W WO 2012093751 A1 WO2012093751 A1 WO 2012093751A1
Authority
WO
WIPO (PCT)
Prior art keywords
epcis
distributed arrangement
subscribe function
server
registration
Prior art date
Application number
PCT/KR2011/001749
Other languages
French (fr)
Inventor
Chang Hyun Kim
Original Assignee
Lg Hitachi 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 Lg Hitachi Ltd. filed Critical Lg Hitachi Ltd.
Publication of WO2012093751A1 publication Critical patent/WO2012093751A1/en

Links

Images

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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging

Definitions

  • the present invention relates, in general, to a system and method for performing the distributed control of the subscribe function of EPCIS, and, more particularly, to a system and method for performing the distributed control of the subscribe function of EPCIS, which enables the setting and operation control of a subscribe function, that is, an asynchronous EPCIS event query result transmission function defined in the EPCIS standard, and which also enables the distributed arrangement of the subscribe function based on the operation control.
  • EPCIS Electronic Product Code Information Services
  • RFID Radio Frequency IDentification
  • EPC Electronic Product Code
  • EPC Electronic Product Code
  • EPC Electronic Product Code
  • the data which is generated in the process of selecting and storing individual objects can be searched in real time by storing and sharing the data in and via EPCIS.
  • EPCIS is defined as a standard by EPCglobal, so that its query interface is identical, with the result that it is possible to effectively exchange information with trade partners in a supply chain using EPCIS.
  • Event data defined in the EPCIS standard includes information about an activity occurring in an actual environment, that is, information about four items, including what, where, when and why.
  • master data represents description information which is meta data about content of each item of the above-described event information.
  • data access interfaces defined in the EPCIS standard include two interfaces. One of them is an EPCIS capture interface that is configured to receive EPCIS event data from the outside and store it, and the other is an EPCIS query interface that is configured to analyze a search request from the outside, queries stored EPCIS event data and provides a report in a form desired by a user.
  • the EPCIS query interface provides two important functions including a poll function (synchronous query request function) and a subscribe function (asynchronous query request function).
  • the subscribe function is a function defined in EPCIS, and is configured to, when a client query sets and registers query params, a query result transmission period and a transmission destination URI regarding event data in the EPCIS server, periodically transmit query results to the destination at the set time even when the client does not make a request. Furthermore, the subscribe function is configured to distinguish individual results from each other using subscription IDs and, therefore, can distinguish individual tasks from each other.
  • EPCIS is not provided with a centralized management system but is operated by each company’s management system, it is a very important factor not only from the standpoint of data management but also from the standpoint of data distribution. Furthermore, due to the growth of the distribution and logistics industry and the advancement of RFID technology caused by the development of Internet commerce, the amount of processing of events which should be processed by EPCIS will increases, so that the scalability of EPCIS and the continuous provision of service will be required.
  • the EPCIS server will be used as the path of the distribution of important corporate information in which a meaning has been given to RFID data in terms of business, and the amount of related data will increase. Accordingly, the amount of use of the subscribe function which performs a search function will increase and, therefore, the amount of the transmission and reception of data and the amount of processing that should be processed by a Central Processing Unit (CPU) will increase. Accordingly, distributed processing technology is an appropriate solution to the processing of searches for the event data of EPCIS, the amount of which becomes large.
  • an object of the present invention is to provide a system and method for performing the distributed control of the subscribe function of EPCIS, which manages registration and status information regarding a subscribe function using distributed arrangement data which is generated when the corresponding subscribe function was registered in an EPCIS server, arranges the subscribe function in a distributed manner, detects a subscribe function which does not operate, and enables this subscribe function to be automatically processed by another EPCIS server.
  • the present invention provides a system for performing distributed control of a subscribe function of EPCIS, including a distributed arrangement database for storing distributed arrangement data regarding the subscribe function; and two or more EPCIS servers for sharing the distributed arrangement database; wherein each of the EPCIS servers including a registration processing module for creating distributed arrangement data containing various types of information related to a subscribe function, the registration of which has been requested, and registering and storing the distributed arrangement data in the distributed arrangement database; a status checking module for checking the operating status of its own or some other EPCIS server and the processing of the subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database; and an automatic management module for managing the starting or stopping of processing of the subscribe function based on the distributed arrangement data.
  • each of the EPCIS servers including a registration processing module for creating distributed arrangement data containing various types of information related to a subscribe function, the registration of which has been requested, and registering and storing the distributed arrangement data in the distributed arrangement database; a status checking module for checking the operating status of its own or some other EPCIS server and the processing of the
  • the distributed arrangement data may include SUB_ID, that is, an ID of the subscribe function, a registered HA_ID, that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database, RUN_HA_ID, an ID of an EPCIS server during operation, which is currently processing the subscribe function, and CHECK_TIME, that is, a time when the EPCIS server during operation performed processing or querying.
  • SUB_ID that is, an ID of the subscribe function
  • a registered HA_ID that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database
  • RUN_HA_ID an ID of an EPCIS server during operation, which is currently processing the subscribe function
  • CHECK_TIME that is, a time when the EPCIS server during operation performed processing or querying.
  • CHECK_TIME may be set such that CHECK_TIMEs of the EPCIS servers have an identical period and do not overlap each other.
  • the registration processing module when receiving a request for a registration of the subscribe function, may check its own HA_ID previously assigned to its EPCIS server, create SUB_ID of the subscribe function, a registration of which has been requested, add CHECK_TIME and RUN_HA_ID to SUB_ID, and register and store resulting data in the distributed arrangement database as the distributed arrangement data;
  • the status checking module may check not only operating status of its own EPCIS server but also operating status of remaining EPCIS servers, processing of the subscribe function and SUB_ID based on the distributed arrangement data stored in the distributed arrangement database, and update and store the distributed arrangement data stored in the distributed arrangement database based on checking results;
  • the automatic management module may check the distributed arrangement data using the status checking module every predetermined CHECK_TIME, call and process the subscribe function if all remaining EPCIS servers are not processing the subscribe function, stop processing of the subscribe function if a registration EPCIS server returns from a failed state to an operable state and then process the subscribe function, and resume processing of a subscribe function being processed by
  • a method of performing distributed control of a subscribe function of EPCIS the method being performed in a system for performing distributed control of a subscribe function of EPCIS comprising a distributed arrangement database for storing distributed arrangement data regarding the subscribe function and two or more EPCIS servers for sharing the distributed arrangement database, the method being performed by each of the EPCIS servers, the method including checking the distributed arrangement data every predetermined CHECK_TIME, and, if all remaining EPCIS servers are not processing the subscribe function, calling and processing the subscribe function; if a registration EPCIS server which first registered the distributed arrangement data in the distributed arrangement database returns to an operable state and then processes the subscribe function, stopping processing of the subscribe function; and if it is the registration EPCIS server, resuming processing of a subscribe function being processed by a remaining EPCIS server immediately after returning to an operable state.
  • a method of performing distributed control of a subscribe function of EPCIS comprising a distributed arrangement database for storing distributed arrangement data regarding the subscribe function and two or more EPCIS servers for sharing the distributed arrangement database, the distributed arrangement data comprising SUB_ID, that is, an ID of the subscribe function, a registered HA_ID, that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database, RUN_HA_ID, an ID of an EPCIS server during operation, which is currently processing the subscribe function, and CHECK_TIME, that is, a time when the EPCIS server during operation performed processing or querying, each of the EPCIS servers querying the distributed arrangement data and then performing the method whenever CHECK_TIME set for the EPCIS server is reached, the method including determining whether the EPCIS server is the registration EPCIS server and an EPCIS server in operation; if the EPCIS server is the registration EPCIS server and
  • CHECK_TIME of each of the EPCIS servers may be set such that CHECK_TIMEs of the EPCIS servers have an identical period and do not overlap each other.
  • the system and method for performing the distributed control of the subscribe function of EPCIS has the advantage of managing registration and status information regarding a subscribe function using distributed arrangement data which is generated when the corresponding subscribe function was registered in an EPCIS server, arranging the subscribe function in a distributed manner, detecting a subscribe function which does not operate, and enabling this subscribe function to be automatically processed by another EPCIS server.
  • FIG. 1 is a diagram showing the configuration of a system for performing the distributed control of the subscribe function of EPCIS according to the present invention
  • FIG. 2 is a flowchart illustrating the process of registering a subscribe function to realize the distributed arrangement of the subscribe function of EPCIS according to the present invention
  • FIG. 3 is a flowchart illustrating an automatic loading and unloading process based on the status analysis of a subscribe function in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention.
  • FIGS. 4a, 4b and 4c are diagrams illustrating a distributed processing or duplexing operation in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention.
  • FIG. 1 is a diagram showing the configuration of the system for performing the distributed control of the subscribe function of EPCIS according to the present invention.
  • the system for performing the distributed control of the subscribe function of EPCIS according to the present invention includes a single distributed arrangement database 200 for storing distributed arrangement data related a subscribe function, as will be described later, and two or more EPCIS servers 100 for sharing the distributed arrangement database 200.
  • Each of the EPCIS servers 100 includes a subscribe function management component 110 according to the present invention.
  • Table 1 is a table showing a data structure that is used for the distributed arrangement of a subscribe function.
  • each subscribe function management component 110 includes a registration processing module 111 for, when a request for the registration of a subscribe function is received, creating, registering and storing the distributed arrangement data of Table 1 in the distributed arrangement database 200 based on the request, a status checking module 113 for checking the operating status of its own or another EPCIS server 100 and the processing of a subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database 200, and an automatic management module 115 for automatically managing the initiation and stopping of the processing of a subscribe function based on the operating status of its own EPCIS server 100 checked by the status checking module 113 and the distributed arrangement data.
  • a registration processing module 111 for, when a request for the registration of a subscribe function is received, creating, registering and storing the distributed arrangement data of Table 1 in the distributed arrangement database 200 based on the request
  • a status checking module 113 for checking the operating status of its own or another EPCIS server 100 and the processing of a subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database 200
  • the registration processing module 111 When the registration processing module 111 receives a request for the registration of a subscribe function, the registration processing module 111 checks an ID previously assigned to its own EPCIS server 110 HA_ID, (hereinafter referred to as "its own HA_ID”), creates the ID SUB_ID of the subscribe function, the registration of which was requested, and the auxiliary ID SUB_STR_ID of the subscribe function, adds creation check time CHECK_TIME and the ID RUN_HA_ID of the EPCIS server ID during operation to the created IDs, and registers and stores the resulting data in the distributed arrangement database 200 as distributed arrangement data.
  • an EPCIS server that first registers a subscribe function is referred to as a "registration EPCIS server”
  • the ID of the registration EPCIS server is referred to as a "registered HA_ID”.
  • the status checking module 113 checks not only the operating status of its own EPCIS server 100 but also the operating status of the other EPCIS servers 100, the processing of the subscribe function and SUB_ID based on the distributed arrangement data stored in the distributed arrangement database 200, for example, based on checking CHECK_TIME of the distributed arrangement data, and then updates the distributed arrangement data stored in the distributed arrangement database 200 based on checking results.
  • the automatic management module 115 checks distributed arrangement data using the status checking module 113 every CHECK_TIME.
  • the automatic management module 115 calls and processes the subscribe function if all the other EPCIS servers 100 including a registration EPCIS server 100 are not processing a subscribe function, and stops the processing of the subscribe function if the registration EPCIS server 100 returns to an operative state and then resumes the processing of the subscribe function. If the automatic management module 115 is that of a registration EPCIS server 100 and returns from a failed state, the automatic management module 115 immediately resumes the processing of the subscribe function which is being processed by some other EPCIS server 100.
  • FIG. 2 is a flowchart illustrating the process of registering a subscribe function to realize the distributed arrangement of the subscribe function of EPCIS according to the present invention.
  • the EPCIS server 100 requests the registration processing module 111 of the subscribe function management component 110 thereof to register the subscribe function at step S10.
  • the registration processing module 111 which has received the request for the registration of the subscribe function checks its own HA_ID and then creates the SUB_ID and SUB_STR_ID of the subscribe function, the registration of which has been requested at step S12.
  • the registration processing module 111 creates CHECK_TIME and RUN_HA_ID defined in the data structure for the distributed arrangement of the subscribe function and creates distributed arrangement data by adding these data to its own HA_ID, SUB_ID and SUB_STR_ID which were checked and created at steps S10 and S12 at step S14, and then registers and stores the created distributed arrangement data in the distributed arrangement database 200 at step S16.
  • FIG. 3 is a flowchart illustrating an automatic loading and unloading process based on the status analysis of a subscribe function in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention. It is preferred that the individual EPCIS servers 100 go through the process shown in FIG. 3 at the same intervals but at different times. For example, when there are three EPCIS servers, it is preferred that CHECK_TIMEs of the EPCIS servers be set so that they have the intervals of 6 seconds and do not overlap each other, as shown in Table 2.
  • step S20 it is determined whether assigned CHECK_TIME has been reached. If, as a result of the determination at step S20, it is determined that the assigned CHECK_TIME has not been reached, step S20 is repeated. In contrast, if the assigned CHECK_TIME has been reached, the process proceeds to step S30 and determines whether its own HA_ID is identical to a registered HA_ID.
  • step S30 If, as a result of the determination at step S30, its own HA_ID is identical to a registered HA_ID, the process proceeds to step S32, where it is determined whether the registered HA_ID is identical to RUN_HA_ID registered in the distributed arrangement database 200. If, as a result of the determination at step S32, they are identical to each other, this corresponds to the case where the registered EPCIS server itself directly processes the subscribe function, so that the process proceeds to step S34, updates CHECK_TIME to the current time, and returns to start (see branch No. 3 of the following Table 3).
  • Table 3 is a table illustrating the cases of the respective branches of the flowchart of FIG. 3 as an example.
  • step S32 if, as a result of the determination at step S32, it is determined that the registered HA_ID is not identical to RUN_HA_ID, this corresponds to the case where the registration EPCIS server has returned from a failed state to an operable state and has made a query, so the process loads and processes the subscribe function at step S36, updates RUN_HA_ID to its own HA_ID at step S38, updates CHECK_TIME to the current time at step S40, and then returns to start (see the case of branch No. 2 of Table 3).
  • step S32 determines whether its own HA_ID is not identical to the registered HA-ID. If, as a result of the determination at step S42, it is determined that the registered HA-ID is identical to RUN_HA_ID, this corresponds to the case where an EPCIS server other than the registration EPCIS server determines that the registration EPCIS server is currently processing the subscribe function, so that the process returns to start without checking CHECK_TIME (the case of branch No. 3 of Table 2).
  • step S42 determines whether the registered HA_ID is not identical to RUN_HA_ID. If, as a result of the determination at step S44, it is determined whether it itself rather than the registration EPCIS server is directly processing the subscribe function. If, as a result of the determination at step S44, it is determined that it itself is directly performing the processing, the process proceeds to step S46, updates CHECK_TIME to the current time, and returns to start (the case of branch No. 4 of Table 3).
  • step S48 it is determined whether CHECK_TIME is normal. If, as a result of the determination at step S48, it is determined that CHECK_TIME is normal, this corresponds to the case where the third EPCIS server, other than the registration EPCIS server, is processing the subscribe function, so that the process returns to start (the case of branch No. 5 of Table 3).
  • the individual EPCIS servers query their own operating status or distributed arrangement data at the same intervals of CHECK_TIME, for example, the intervals of 6 seconds, but at different times during normal operation. Accordingly, it is determined that the case where CHECK_TIME was reached 6 or more seconds before the current time is abnormal, and it is determined that the case where CHECK_TIME was reached less than 6 seconds before the current time is normal.
  • step S48 determines that CHECK_TIME is abnormal, this corresponds to the case where any EPCIS server is not processing the subscribe function, so that the process proceeds to step S50, where the subscribe function is directly loaded and processed, updates RUN_HA_ID to its HA_ID at step S52, updates CHECK_TIME to the current time, and returns to start at step S54 (the case of branch No. 6 of Table 3).
  • FIGS. 4a, 4b and 4c are diagrams illustrating a distributed processing or duplexing operation in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention.
  • FIG. 4a shows the case where after EPCIS server A 100A has registered subscribe function A and EPCIS server B 100B has registered subscribe function B, both EPCIS server A 100A and EPCIS server B 100B operate normally and process respective registered subscribe functions registered in the distributed arrangement database 200. If EPCIS server A 100A fails, EPCIS server B 100B processes not only its own registered subscribe function B but also subscribe function A, as shown in FIG. 4b.
  • FIG. 4c shows the case where when three EPCIS servers A, B and C 100A, 100B and 100C had processed their own registered subscribe functions, respectively, and EPCIS server B 100B fails, EPCIS server C 100C processes not only its own registered subscribe function C but also subscribe function B and the EPCIS server A 100A processes only its own subscribe function A.

Abstract

Disclosed herein is a system for performing the distributed control of the subscribe function of EPCIS. The system includes a distributed arrangement database for storing distributed arrangement data regarding the subscribe function, and two or more EPCIS servers for sharing the distributed arrangement database. Each of the EPCIS servers includes a registration processing module for creating distributed arrangement data containing various types of information related to a subscribe function, the registration of which has been requested, and registering and storing the distributed arrangement data in the distributed arrangement database, a status checking module for checking the operating status of its own or some other EPCIS server and the processing of the subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database, and an automatic management module for managing the starting or stopping of processing of the subscribe function based on the distributed arrangement data.

Description

SYSTEM AND METHOD FOR PERFORMING DISTRIBUTED CONTROL OF SUBSCRIBE FUNCTION OF EPCIS
The present invention relates, in general, to a system and method for performing the distributed control of the subscribe function of EPCIS, and, more particularly, to a system and method for performing the distributed control of the subscribe function of EPCIS, which enables the setting and operation control of a subscribe function, that is, an asynchronous EPCIS event query result transmission function defined in the EPCIS standard, and which also enables the distributed arrangement of the subscribe function based on the operation control.
As is well known, Electronic Product Code Information Services (hereinafter referred to as "EPCIS") is one of the Radio Frequency IDentification (RFID) technology standards, which was proposed to share and utilize information so as to obtain data about objects or transactions occurring between trade partners. Here, since Electronic Product Code (EPC) is configured to assign unique numbers to individual objects, such as various types of products, it is useful for selecting and storing individual products. The data which is generated in the process of selecting and storing individual objects can be searched in real time by storing and sharing the data in and via EPCIS. Furthermore, EPCIS is defined as a standard by EPCglobal, so that its query interface is identical, with the result that it is possible to effectively exchange information with trade partners in a supply chain using EPCIS.
Meanwhile, the EPCIS standard defines event and master data specifications and data access (input and query) interface standards. Event data defined in the EPCIS standard includes information about an activity occurring in an actual environment, that is, information about four items, including what, where, when and why. In contrast, master data represents description information which is meta data about content of each item of the above-described event information.
Meanwhile, data access interfaces defined in the EPCIS standard include two interfaces. One of them is an EPCIS capture interface that is configured to receive EPCIS event data from the outside and store it, and the other is an EPCIS query interface that is configured to analyze a search request from the outside, queries stored EPCIS event data and provides a report in a form desired by a user. Of these two interfaces, the EPCIS query interface provides two important functions including a poll function (synchronous query request function) and a subscribe function (asynchronous query request function).
Here, the subscribe function is a function defined in EPCIS, and is configured to, when a client query sets and registers query params, a query result transmission period and a transmission destination URI regarding event data in the EPCIS server, periodically transmit query results to the destination at the set time even when the client does not make a request. Furthermore, the subscribe function is configured to distinguish individual results from each other using subscription IDs and, therefore, can distinguish individual tasks from each other.
Meanwhile, since EPCIS is not provided with a centralized management system but is operated by each company’s management system, it is a very important factor not only from the standpoint of data management but also from the standpoint of data distribution. Furthermore, due to the growth of the distribution and logistics industry and the advancement of RFID technology caused by the development of Internet commerce, the amount of processing of events which should be processed by EPCIS will increases, so that the scalability of EPCIS and the continuous provision of service will be required.
As described above, in the future ubiquitous era, RFID technology will be used in the more industrial fields, the EPCIS server will be used as the path of the distribution of important corporate information in which a meaning has been given to RFID data in terms of business, and the amount of related data will increase. Accordingly, the amount of use of the subscribe function which performs a search function will increase and, therefore, the amount of the transmission and reception of data and the amount of processing that should be processed by a Central Processing Unit (CPU) will increase. Accordingly, distributed processing technology is an appropriate solution to the processing of searches for the event data of EPCIS, the amount of which becomes large.
However, since the EPCIS standard defines only event data specifications and input and output interfaces, but does not define a method of processing the requests of a function for transmitting a large number of EPCIS event query results, that is, a subscribe function, there is the difficulty of commercialization.
Accordingly, the present invention has been made keeping in mind the above problems occurring in the prior art, and an object of the present invention is to provide a system and method for performing the distributed control of the subscribe function of EPCIS, which manages registration and status information regarding a subscribe function using distributed arrangement data which is generated when the corresponding subscribe function was registered in an EPCIS server, arranges the subscribe function in a distributed manner, detects a subscribe function which does not operate, and enables this subscribe function to be automatically processed by another EPCIS server.
In order to accomplish the above object, the present invention provides a system for performing distributed control of a subscribe function of EPCIS, including a distributed arrangement database for storing distributed arrangement data regarding the subscribe function; and two or more EPCIS servers for sharing the distributed arrangement database; wherein each of the EPCIS servers including a registration processing module for creating distributed arrangement data containing various types of information related to a subscribe function, the registration of which has been requested, and registering and storing the distributed arrangement data in the distributed arrangement database; a status checking module for checking the operating status of its own or some other EPCIS server and the processing of the subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database; and an automatic management module for managing the starting or stopping of processing of the subscribe function based on the distributed arrangement data.
The distributed arrangement data may include SUB_ID, that is, an ID of the subscribe function, a registered HA_ID, that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database, RUN_HA_ID, an ID of an EPCIS server during operation, which is currently processing the subscribe function, and CHECK_TIME, that is, a time when the EPCIS server during operation performed processing or querying.
CHECK_TIME may be set such that CHECK_TIMEs of the EPCIS servers have an identical period and do not overlap each other.
The registration processing module, when receiving a request for a registration of the subscribe function, may check its own HA_ID previously assigned to its EPCIS server, create SUB_ID of the subscribe function, a registration of which has been requested, add CHECK_TIME and RUN_HA_ID to SUB_ID, and register and store resulting data in the distributed arrangement database as the distributed arrangement data; the status checking module may check not only operating status of its own EPCIS server but also operating status of remaining EPCIS servers, processing of the subscribe function and SUB_ID based on the distributed arrangement data stored in the distributed arrangement database, and update and store the distributed arrangement data stored in the distributed arrangement database based on checking results; and the automatic management module may check the distributed arrangement data using the status checking module every predetermined CHECK_TIME, call and process the subscribe function if all remaining EPCIS servers are not processing the subscribe function, stop processing of the subscribe function if a registration EPCIS server returns from a failed state to an operable state and then process the subscribe function, and resume processing of a subscribe function being processed by a remaining EPCIS server immediately after returning to an operable state if its own EPCIS server is the registration EPCIS server.
According to another aspect of the present invention, there is provided a method of performing distributed control of a subscribe function of EPCIS, the method being performed in a system for performing distributed control of a subscribe function of EPCIS comprising a distributed arrangement database for storing distributed arrangement data regarding the subscribe function and two or more EPCIS servers for sharing the distributed arrangement database, the method being performed by each of the EPCIS servers, the method including checking the distributed arrangement data every predetermined CHECK_TIME, and, if all remaining EPCIS servers are not processing the subscribe function, calling and processing the subscribe function; if a registration EPCIS server which first registered the distributed arrangement data in the distributed arrangement database returns to an operable state and then processes the subscribe function, stopping processing of the subscribe function; and if it is the registration EPCIS server, resuming processing of a subscribe function being processed by a remaining EPCIS server immediately after returning to an operable state.
According to another aspect of the present invention, there is provided a method of performing distributed control of a subscribe function of EPCIS, the method being performed in a system for performing distributed control of a subscribe function of EPCIS comprising a distributed arrangement database for storing distributed arrangement data regarding the subscribe function and two or more EPCIS servers for sharing the distributed arrangement database, the distributed arrangement data comprising SUB_ID, that is, an ID of the subscribe function, a registered HA_ID, that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database, RUN_HA_ID, an ID of an EPCIS server during operation, which is currently processing the subscribe function, and CHECK_TIME, that is, a time when the EPCIS server during operation performed processing or querying, each of the EPCIS servers querying the distributed arrangement data and then performing the method whenever CHECK_TIME set for the EPCIS server is reached, the method including determining whether the EPCIS server is the registration EPCIS server and an EPCIS server in operation; if the EPCIS server is the registration EPCIS server and an EPCIS server in operation, updating CHECK_TIME to current time; if the EPCIS server is not the registration EPCIS server or an EPCIS server in operation, loading and processing the subscribe function, updating RUN_HA_ID to its own HA_ID, and updating CHECK_TIME to current time; if the EPCIS server is not the registration EPCIS server but is an EPCIS server during operation, updating CHECK_TIME to current time; if the EPCIS server is neither the registration EPCIS server nor an EPCIS server during operation, determining whether CHECK_TIME is normal; and if CHECK_TIME is not normal, loading and processing the subscribe function, updating RUN_HA_ID to its own HA_ID, and updating CHECK_TIME to current time.
CHECK_TIME of each of the EPCIS servers may be set such that CHECK_TIMEs of the EPCIS servers have an identical period and do not overlap each other.
The system and method for performing the distributed control of the subscribe function of EPCIS according to the present invention has the advantage of managing registration and status information regarding a subscribe function using distributed arrangement data which is generated when the corresponding subscribe function was registered in an EPCIS server, arranging the subscribe function in a distributed manner, detecting a subscribe function which does not operate, and enabling this subscribe function to be automatically processed by another EPCIS server.
The above and other objects, features and advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
FIG. 1 is a diagram showing the configuration of a system for performing the distributed control of the subscribe function of EPCIS according to the present invention;
FIG. 2 is a flowchart illustrating the process of registering a subscribe function to realize the distributed arrangement of the subscribe function of EPCIS according to the present invention;
FIG. 3 is a flowchart illustrating an automatic loading and unloading process based on the status analysis of a subscribe function in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention; and
FIGS. 4a, 4b and 4c are diagrams illustrating a distributed processing or duplexing operation in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention.
A system and method for performing the distributed control of the subscribe function of EPCIS according to a preferred embodiment of the present invention will be described in detail below.
FIG. 1 is a diagram showing the configuration of the system for performing the distributed control of the subscribe function of EPCIS according to the present invention. As shown in FIG. 1, the system for performing the distributed control of the subscribe function of EPCIS according to the present invention includes a single distributed arrangement database 200 for storing distributed arrangement data related a subscribe function, as will be described later, and two or more EPCIS servers 100 for sharing the distributed arrangement database 200. Each of the EPCIS servers 100 includes a subscribe function management component 110 according to the present invention.
With the above configuration, it is possible to provide seamless service in such a manner that when an EPCIS server 100 cannot operate, another available EPCIS server 100 additionally performs a subscribe function that was registered by the failed EPCIS server 100, with the result that the expansibility and reliability of the EPCIS server can be achieved.
The following Table 1 is a table showing a data structure that is used for the distributed arrangement of a subscribe function.
[Table 1]
Figure PCTKR2011001749-appb-I000001
In the above-described configuration, each subscribe function management component 110, in turn, includes a registration processing module 111 for, when a request for the registration of a subscribe function is received, creating, registering and storing the distributed arrangement data of Table 1 in the distributed arrangement database 200 based on the request, a status checking module 113 for checking the operating status of its own or another EPCIS server 100 and the processing of a subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database 200, and an automatic management module 115 for automatically managing the initiation and stopping of the processing of a subscribe function based on the operating status of its own EPCIS server 100 checked by the status checking module 113 and the distributed arrangement data.
When the registration processing module 111 receives a request for the registration of a subscribe function, the registration processing module 111 checks an ID previously assigned to its own EPCIS server 110 HA_ID, (hereinafter referred to as "its own HA_ID"), creates the ID SUB_ID of the subscribe function, the registration of which was requested, and the auxiliary ID SUB_STR_ID of the subscribe function, adds creation check time CHECK_TIME and the ID RUN_HA_ID of the EPCIS server ID during operation to the created IDs, and registers and stores the resulting data in the distributed arrangement database 200 as distributed arrangement data. Hereinafter, an EPCIS server that first registers a subscribe function is referred to as a "registration EPCIS server" , and the ID of the registration EPCIS server is referred to as a "registered HA_ID".
Thereafter, the status checking module 113 checks not only the operating status of its own EPCIS server 100 but also the operating status of the other EPCIS servers 100, the processing of the subscribe function and SUB_ID based on the distributed arrangement data stored in the distributed arrangement database 200, for example, based on checking CHECK_TIME of the distributed arrangement data, and then updates the distributed arrangement data stored in the distributed arrangement database 200 based on checking results.
The automatic management module 115 checks distributed arrangement data using the status checking module 113 every CHECK_TIME. The automatic management module 115 calls and processes the subscribe function if all the other EPCIS servers 100 including a registration EPCIS server 100 are not processing a subscribe function, and stops the processing of the subscribe function if the registration EPCIS server 100 returns to an operative state and then resumes the processing of the subscribe function. If the automatic management module 115 is that of a registration EPCIS server 100 and returns from a failed state, the automatic management module 115 immediately resumes the processing of the subscribe function which is being processed by some other EPCIS server 100.
FIG. 2 is a flowchart illustrating the process of registering a subscribe function to realize the distributed arrangement of the subscribe function of EPCIS according to the present invention. As shown in FIG. 2, in the process of registering a subscribe function according to the present invention, when a request for the registration of a subscribe function provided by an EPCIS server 100 is received, the EPCIS server 100 requests the registration processing module 111 of the subscribe function management component 110 thereof to register the subscribe function at step S10.
The registration processing module 111 which has received the request for the registration of the subscribe function checks its own HA_ID and then creates the SUB_ID and SUB_STR_ID of the subscribe function, the registration of which has been requested at step S12.
Thereafter, the registration processing module 111 creates CHECK_TIME and RUN_HA_ID defined in the data structure for the distributed arrangement of the subscribe function and creates distributed arrangement data by adding these data to its own HA_ID, SUB_ID and SUB_STR_ID which were checked and created at steps S10 and S12 at step S14, and then registers and stores the created distributed arrangement data in the distributed arrangement database 200 at step S16.
FIG. 3 is a flowchart illustrating an automatic loading and unloading process based on the status analysis of a subscribe function in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention. It is preferred that the individual EPCIS servers 100 go through the process shown in FIG. 3 at the same intervals but at different times. For example, when there are three EPCIS servers, it is preferred that CHECK_TIMEs of the EPCIS servers be set so that they have the intervals of 6 seconds and do not overlap each other, as shown in Table 2.
[Table 2]
Figure PCTKR2011001749-appb-I000002
As shown in FIG. 3, in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention, first, it is determined whether assigned CHECK_TIME has been reached at step S20. If, as a result of the determination at step S20, it is determined that the assigned CHECK_TIME has not been reached, step S20 is repeated. In contrast, if the assigned CHECK_TIME has been reached, the process proceeds to step S30 and determines whether its own HA_ID is identical to a registered HA_ID. If, as a result of the determination at step S30, its own HA_ID is identical to a registered HA_ID, the process proceeds to step S32, where it is determined whether the registered HA_ID is identical to RUN_HA_ID registered in the distributed arrangement database 200. If, as a result of the determination at step S32, they are identical to each other, this corresponds to the case where the registered EPCIS server itself directly processes the subscribe function, so that the process proceeds to step S34, updates CHECK_TIME to the current time, and returns to start (see branch No. 3 of the following Table 3).
The following Table 3 is a table illustrating the cases of the respective branches of the flowchart of FIG. 3 as an example.
[Table 3]
Figure PCTKR2011001749-appb-I000003
Referring to FIG. 4 again, if, as a result of the determination at step S32, it is determined that the registered HA_ID is not identical to RUN_HA_ID, this corresponds to the case where the registration EPCIS server has returned from a failed state to an operable state and has made a query, so the process loads and processes the subscribe function at step S36, updates RUN_HA_ID to its own HA_ID at step S38, updates CHECK_TIME to the current time at step S40, and then returns to start (see the case of branch No. 2 of Table 3).
Meanwhile, if, as a result of the determination at step S32, it is determined that its own HA_ID is not identical to the registered HA-ID, the process returns again to step S42, where it is determined whether the registered HA_ID is identical to RUN_HA_ID. If, as a result of the determination at step S42, it is determined that the registered HA-ID is identical to RUN_HA_ID, this corresponds to the case where an EPCIS server other than the registration EPCIS server determines that the registration EPCIS server is currently processing the subscribe function, so that the process returns to start without checking CHECK_TIME (the case of branch No. 3 of Table 2).
In contrast, if, as a result of the determination at step S42, the registered HA_ID is not identical to RUN_HA_ID, the process proceeds to step S44, where it is determined whether it itself rather than the registration EPCIS server is directly processing the subscribe function. If, as a result of the determination at step S44, it is determined that it itself is directly performing the processing, the process proceeds to step S46, updates CHECK_TIME to the current time, and returns to start (the case of branch No. 4 of Table 3).
Meanwhile, if, as a result of the determination at step S44, it is determined that it itself is not directly processing the subscribe function, the process proceeds to step S48, where it is determined whether CHECK_TIME is normal. If, as a result of the determination at step S48, it is determined that CHECK_TIME is normal, this corresponds to the case where the third EPCIS server, other than the registration EPCIS server, is processing the subscribe function, so that the process returns to start (the case of branch No. 5 of Table 3). Here, the individual EPCIS servers query their own operating status or distributed arrangement data at the same intervals of CHECK_TIME, for example, the intervals of 6 seconds, but at different times during normal operation. Accordingly, it is determined that the case where CHECK_TIME was reached 6 or more seconds before the current time is abnormal, and it is determined that the case where CHECK_TIME was reached less than 6 seconds before the current time is normal.
In contrast, if, as a result of the determination at step S48, it is determined that CHECK_TIME is abnormal, this corresponds to the case where any EPCIS server is not processing the subscribe function, so that the process proceeds to step S50, where the subscribe function is directly loaded and processed, updates RUN_HA_ID to its HA_ID at step S52, updates CHECK_TIME to the current time, and returns to start at step S54 (the case of branch No. 6 of Table 3).
FIGS. 4a, 4b and 4c are diagrams illustrating a distributed processing or duplexing operation in the system for performing the distributed control of the subscribe function of EPCIS according to the present invention. FIG. 4a shows the case where after EPCIS server A 100A has registered subscribe function A and EPCIS server B 100B has registered subscribe function B, both EPCIS server A 100A and EPCIS server B 100B operate normally and process respective registered subscribe functions registered in the distributed arrangement database 200. If EPCIS server A 100A fails, EPCIS server B 100B processes not only its own registered subscribe function B but also subscribe function A, as shown in FIG. 4b.
FIG. 4c shows the case where when three EPCIS servers A, B and C 100A, 100B and 100C had processed their own registered subscribe functions, respectively, and EPCIS server B 100B fails, EPCIS server C 100C processes not only its own registered subscribe function C but also subscribe function B and the EPCIS server A 100A processes only its own subscribe function A.
Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims.

Claims (8)

  1. A system for performing distributed control of a subscribe function of Electronic Product Code Information Services (EPCIS), comprising:
    a distributed arrangement database for storing distributed arrangement data regarding the subscribe function; and
    two or more EPCIS servers for sharing the distributed arrangement database;
    wherein each of the EPCIS servers comprises:
    a registration processing module for creating distributed arrangement data containing various types of information related to a subscribe function, a registration of which has been requested, and registering and storing the distributed arrangement data in the distributed arrangement database;
    a status checking module for checking operating status of its own or some other EPCIS server and processing of the subscribe function and updating and storing the distributed arrangement data stored in the distributed arrangement database; and
    an automatic management module for managing starting or stopping of processing of the subscribe function based on the distributed arrangement data.
  2. The system as set forth in claim 1, wherein the distributed arrangement data comprises SUB_ID, that is, an Identification (ID) of the subscribe function, a registered HA_ID, that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database, RUN_HA_ID, an ID of an EPCIS server during operation, which is currently processing the subscribe function, and CHECK_TIME, that is, a time when the EPCIS server during operation performed processing or querying.
  3. The system as set forth in claim 2, wherein CHECK_TIME is set such that CHECK_TIMEs of the EPCIS servers have an identical period and do not overlap each other.
  4. The system as set forth in claim 3, wherein:
    the registration processing module, when receiving a request for a registration of the subscribe function, checks its own HA_ID previously assigned to its EPCIS server, creates SUB_ID of the subscribe function, a registration of which has been requested, adds CHECK_TIME and RUN_HA_ID to SUB_ID, and registers and stores resulting data in the distributed arrangement database as the distributed arrangement data;
    the status checking module checks not only operating status of its own EPCIS server but also operating status of remaining EPCIS servers, processing of the subscribe function and SUB_ID based on the distributed arrangement data stored in the distributed arrangement database, and updates and stores the distributed arrangement data stored in the distributed arrangement database based on checking results; and
    the automatic management module checks the distributed arrangement data using the status checking module every predetermined CHECK_TIME, calls and processes the subscribe function if all remaining EPCIS servers are not processing the subscribe function, stops processing of the subscribe function if a registration EPCIS server returns from a failed state to an operable state and then processes the subscribe function, and resumes processing of a subscribe function being processed by a remaining EPCIS server immediately after returning to an operable state if its own EPCIS server is the registration EPCIS server.
  5. The EPCIS server for the system for performing distributed control of a subscribe function of EPCIS set forth in any one of claims 1 to 4.
  6. A method of performing distributed control of a subscribe function of EPCIS, the method being performed in a system for performing distributed control of a subscribe function of EPCIS comprising a distributed arrangement database for storing distributed arrangement data regarding the subscribe function and two or more EPCIS servers for sharing the distributed arrangement database, the method being performed by each of the EPCIS servers, the method comprising:
    checking the distributed arrangement data every predetermined CHECK_TIME, and, if all remaining EPCIS servers are not processing the subscribe function, calling and processing the subscribe function;
    if a registration EPCIS server which first registered the distributed arrangement data in the distributed arrangement database returns to an operable state and then processes the subscribe function, stopping processing of the subscribe function; and
    if it is the registration EPCIS server, resuming processing of a subscribe function being processed by a remaining EPCIS server immediately after returning to an operable state.
  7. A method of performing distributed control of a subscribe function of EPCIS, the method being performed in a system for performing distributed control of a subscribe function of EPCIS comprising a distributed arrangement database for storing distributed arrangement data regarding the subscribe function and two or more EPCIS servers for sharing the distributed arrangement database, the distributed arrangement data comprising SUB_ID, that is, an ID of the subscribe function, a registered HA_ID, that is, an ID of a registration EPCIS server which has registered SUB_ID in the distributed arrangement database, RUN_HA_ID, an ID of an EPCIS server during operation, which is currently processing the subscribe function, and CHECK_TIME, that is, a time when the EPCIS server during operation performed processing or querying, each of the EPCIS servers querying the distributed arrangement data and then performing the method whenever CHECK_TIME set for the EPCIS server is reached, the method comprising:
    determining whether the EPCIS server is the registration EPCIS server and an EPCIS server in operation;
    if the EPCIS server is the registration EPCIS server and an EPCIS server in operation, updating CHECK_TIME to current time;
    if the EPCIS server is not the registration EPCIS server or an EPCIS server in operation, loading and processing the subscribe function, updating RUN_HA_ID to its own HA_ID, and updating CHECK_TIME to current time;
    if the EPCIS server is not the registration EPCIS server but is an EPCIS server during operation, updating CHECK_TIME to current time;
    if the EPCIS server is neither the registration EPCIS server nor an EPCIS server during operation, determining whether CHECK_TIME is normal; and
    if CHECK_TIME is not normal, loading and processing the subscribe function, updating RUN_HA_ID to its own HA_ID, and updating CHECK_TIME to current time.
  8. The method as set forth in claim 6 or 7, wherein CHECK_TIME of each of the EPCIS servers is set such that CHECK_TIMEs of the EPCIS servers have an identical period and do not overlap each other.
PCT/KR2011/001749 2011-01-03 2011-03-14 System and method for performing distributed control of subscribe function of epcis WO2012093751A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110000285A KR101248889B1 (en) 2011-01-03 2011-01-03 distribution control system for subscribe of EPCIS and the method thereof
KR10-2011-0000285 2011-01-03

Publications (1)

Publication Number Publication Date
WO2012093751A1 true WO2012093751A1 (en) 2012-07-12

Family

ID=46457596

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2011/001749 WO2012093751A1 (en) 2011-01-03 2011-03-14 System and method for performing distributed control of subscribe function of epcis

Country Status (2)

Country Link
KR (1) KR101248889B1 (en)
WO (1) WO2012093751A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070213999A1 (en) * 2006-01-31 2007-09-13 Bea Systems, Inc. EPC provisioning system using business rules
US20070233829A1 (en) * 2006-03-31 2007-10-04 Bea Systems, Inc. System and method of monitoring an enterprise wide RFID deployment using standards based JMX technology
US20080001751A1 (en) * 2006-06-09 2008-01-03 Bea Systems, Inc. Rfid enterprise server improvements
US20090150718A1 (en) * 2007-12-11 2009-06-11 Choon-Seo Park Large-scale cluster monitoring system, and method of automatically building/restoring the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070213999A1 (en) * 2006-01-31 2007-09-13 Bea Systems, Inc. EPC provisioning system using business rules
US20070233829A1 (en) * 2006-03-31 2007-10-04 Bea Systems, Inc. System and method of monitoring an enterprise wide RFID deployment using standards based JMX technology
US20080001751A1 (en) * 2006-06-09 2008-01-03 Bea Systems, Inc. Rfid enterprise server improvements
US20090150718A1 (en) * 2007-12-11 2009-06-11 Choon-Seo Park Large-scale cluster monitoring system, and method of automatically building/restoring the same

Also Published As

Publication number Publication date
KR20120078963A (en) 2012-07-11
KR101248889B1 (en) 2013-03-29

Similar Documents

Publication Publication Date Title
CN110119292B (en) System operation parameter query method, matching method, device and node equipment
CN101960825B (en) Publish/subscribe message broker
US8639792B2 (en) Job processing system, method and program
EP0447038A2 (en) A system for establishing a communication path in a closely coupled computer system
WO2001013271A1 (en) System and method for transmitting data content in a computer network
US8881173B2 (en) Event processing system, distribution controller, event processing method, distribution control method, and program storage medium
CN101296176B (en) Data processing method and apparatus based on cluster
EP2196906B1 (en) Cluster-based business process management through eager displacement and on-demand recovery
CN112630557A (en) Equipment state detection method, device, equipment and medium
CN109684093A (en) Data processing method and system
CN112667601A (en) Block chain identifier management method, terminal device and computer-readable storage medium
CN107066522B (en) Database access method and device
US7739660B2 (en) Code management in a distributed software development environment
EP1574980A1 (en) Context objects for accessing message content
US20030115243A1 (en) Distributed process execution system and method
WO2012093751A1 (en) System and method for performing distributed control of subscribe function of epcis
US20190129763A1 (en) Processing system and processing method
CN107045466B (en) Service data auditing method, device and system
CN115098157A (en) Method and device for processing public service data
WO2018194252A1 (en) Product distribution management method and system for same
CN113283742A (en) Task allocation method and device
CN112597423A (en) Webpage content display method, terminal and server
CN115334006B (en) Gray level verification method and system based on client implementation
CN113542319A (en) Service providing entity change notification method, device and system used in Dubbo framework
WO2014051223A1 (en) Apparatus and method for providing product code, and computer-readable recording medium for said method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11854979

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11854979

Country of ref document: EP

Kind code of ref document: A1