US 12,321,366 B2
Transaction based processing using asynchronous microservices
Yu Pang, Morris Plains, NJ (US); Shao Min Sun, Morris Plains, NJ (US); and Weilin Zhang, Morris Plains, NJ (US)
Assigned to HONEYWELL INTERNATIONAL INC., Charlotte, NC (US)
Appl. No. 17/759,495
Filed by HONEYWELL INTERNATIONAL INC., Morris Plains, NJ (US)
PCT Filed Feb. 4, 2020, PCT No. PCT/CN2020/074275
§ 371(c)(1), (2) Date Jul. 26, 2022,
PCT Pub. No. WO2021/155496, PCT Pub. Date Aug. 12, 2021.
Prior Publication US 2023/0058475 A1, Feb. 23, 2023
Int. Cl. G06F 16/27 (2019.01); G06F 9/54 (2006.01)
CPC G06F 16/273 (2019.01) [G06F 9/546 (2013.01)] 12 Claims
OG exemplary drawing
 
1. A system for maintaining data consistency between an alarm-generating platform with an alarm-generating platform database and a workorder-generating platform with a workorder-generating platform database, wherein the alarm-generating platform is separate from and operates asynchronously of the workorder-generating platform, and the alarm-generating platform initiates transactions that are to be processed by the workorder-generating platform, the system comprising:
one or more first memories for storing the alarm-generating platform database and one or more second memories for storing the workorder-generating platform database;
one or more processors operatively coupled to the one or more first and second memories, the one or more processors configured to:
process transactions of the alarm-generating platform, wherein at least some of the transactions of the alarm-generating platform, when processed, update the alarm-generating platform database and also produce corresponding transaction messages for subsequent processing by the workorder-generating platform, the transaction messages are recorded in a first transaction table that includes a transaction entry for each transaction message in the first transaction table, and each transaction entry in the first transaction table includes a corresponding transaction identifier and a transaction message status, wherein the transaction message status designates finished or unfinished, wherein each transaction entry in the first transaction table includes transaction data, the transaction data including workorder data that corresponds to the corresponding transaction message, and wherein at least some of the transactions of the alarm-generating platform include corresponding alarms issued by a building management system;
access the first transaction table and provide the transaction messages that have a transaction message status of unfinished into a message queue, and update the transaction message status in the first transaction table to finished for those transaction messages that have been placed in the message queue;
receive the transaction messages from the message queue and to process those transaction messages using the workorder-generating platform, wherein at least some of the transaction messages, when processed, update the workorder-generating platform database, and record asynchronously of recording transactions in the first transaction table each of the transaction messages in a second transaction table including a transaction entry for each transaction message, wherein each transaction entry in the second transaction table includes the transaction identifier of the corresponding transaction message; and
check, for each transaction message received from the message queue, whether the second transaction table already has a transaction entry that has a matching transaction identifier, and if so, cause the workorder-generating platform database to include updates from only one of the matching transactions.