IP Library Granted Patent US 8,429,448
Granted Patent B1
US 8,429,448 · App. 12/965,511 · Granted Apr 23, 2013

Systems and methods for dynamic transaction migration in an event-driven, multi-silo architecture

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,429,448
App. No.
12/965,511
Granted
Apr 23, 2013
Kind
B1
Abstract

Systems and methods may include providing a first silo configured to operate a first set of event-driven processing stages, and a second silo configured to operate a second set of event-driven processing stages; arranging at least one shared transaction cache between the first set of processing stages and the second set of processing stages of the respective first and second silos, where each processing stage of the first and second sets of processing stages can obtain or receive one or more transactions from the at least one shared transaction cache for processing, and where when a distressed processing stage in the first silo fails to process a first transaction designated for the distressed processing stage in a predefined amount of time, a non-distressed processing stage in the second silo obtains or receives the first transaction from the at least one shared transaction cache to process the first transaction on behalf of the distressed processing stage.

Claims (32)

1. A computer-implemented method, comprising:

providing a first silo comprising a first cluster of one or more first computers configured to operate a first set of event-driven processing stages;

providing a second silo comprising a second cluster of one or more second computers configured to operate a second set of event-driven processing stages, wherein the first and second sets of processing stages include substantially identical processing stages such that during normal operations of the first and second silos, transactions are allocated between the first and second silos;

arranging at least one shared transaction cache between the first set of processing stages and the second set of processing stages of the respective first and second silos, wherein the at least one transaction cache stores one or more transactions designated for processing by respective processing stages of the first set or the second set,

wherein each processing stage of the first and second sets of processing stages can obtain or receive one or more transactions from the at least one shared transaction cache for processing,

wherein when a distressed processing stage in the first silo fails to process a first transaction designated for the distressed processing stage in a predefined amount of time, a non-distressed processing stage in the second silo obtains or receives the first transaction from the at least one shared transaction cache to process the first transaction on behalf of the distressed processing stage.

2. The method of claim 1 , wherein the distressed processing stage and non-distressed processing stage have substantially identical processing logic.

3. The method of claim 1 , wherein the first processing silo and the second processing silo are physically located at a same data center.

4. The method of claim 1 , wherein a messaging service is utilized to deliver one or more transactions between the at least one shared transaction cache and each processing stage of the first and second sets of processing stages.

5. The method of claim 4 , wherein the messaging service provides an asynchronous communications channel for delivering one or more transactions between the at least one shared transaction cache and each processing stage of the first and second sets of processing stages.

6. The method of claim 1 , wherein the first and second silos are replicated silos having substantially identical functions, and are operative to process respective transactions in parallel during normal operations.

7. The method of claim 1 , wherein a result of the first transaction being processed by the non-distressed processing stage is provided to the at least one transaction cache as a second transaction request for processing by the second silo.

8. The method of claim 1 , wherein the non-distressed processing stage of the second set is a final processing stage of the second set, wherein the second transaction request is designated for delivery to an external service computer.

9. The method of claim 1 , wherein the first transaction is triggered based at least in part upon receipt of a healthcare transaction request from an external event source computer by a load balancer computer in communication with the first silo and the second silo.

10. The method of claim 1 , wherein the healthcare transaction request is at least one of: (i) an eligibility verification request, (ii) a preauthorization request, or (iii) a claim status request.

11. A system, comprising:

at least one memory for storing computer-executable instructions; and

at least one processor in communication with the at least one memory, wherein the at least one processor is configured to execute the computer-executable instructions to:

provide a first silo comprising a first cluster of one or more first computers configured to operate a first set of event-driven processing stages;

provide a second silo comprising a second cluster of one or more second computers configured to operate a second set of event-driven processing stages, wherein the first and second sets of processing stages include substantially identical processing stages such that during normal operations of the first and second silos, transactions are allocated between the first and second silos;

arrange at least one shared transaction cache between the first set of processing stages and the second set of processing stages of the respective first and second silos, wherein the at least one transaction cache stores one or more transactions designated for processing by respective processing stages of the first set or the second set,

wherein each processing stage of the first and second sets of processing stages can obtain or receive one or more transactions from the at least one shared transaction cache for processing,

wherein when a distressed processing stage in the first silo fails to process a first transaction designated for the distressed processing stage in a predefined amount of time, a non-distressed processing stage in the second silo obtains or receives the first transaction from the at least one shared transaction cache to process the first transaction on behalf of the distressed processing stage.

12. The system of claim 11 , wherein the distressed processing stage and non-distressed processing stage have substantially identical processing logic.

13. The system of claim 11 , wherein the first processing silo and the second processing silo are physically located at a same data center.

14. The system of claim 11 , wherein a messaging service is utilized to deliver one or more transactions between the at least one shared transaction cache and each processing stage of the first and second sets of processing stages.

15. The system of claim 14 , wherein the messaging service provides an asynchronous communications channel for delivering one or more transactions between the at least one shared transaction cache and each processing stage of the first and second sets of processing stages.

16. The system of claim 11 , wherein the first and second silos are replicated silos having substantially identical functions, and are operative to process respective transactions in parallel during normal operations.

17. The system of claim 11 , wherein a result of the first transaction being processed by the non-distressed processing stage is provided to the at least one transaction cache as a second transaction request for processing by the second silo.

18. The system of claim 11 , wherein the non-distressed processing stage of the second set is a final processing stage of the second set, wherein the second transaction request is designated for delivery to an external service computer.

19. The system of claim 11 , wherein the first transaction is triggered based at least in part upon receipt of a healthcare transaction request from an external event source computer by a load balancer computer in communication with the first silo and the second silo.

20. The system of claim 11 , wherein the healthcare transaction request is at least one of: (i) an eligibility verification request, (ii) a preauthorization request, or (iii) a claim status request.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Oct 5, 2022
From: BANK OF AMERICA, N.A.
To: CHANGE HEALTHCARE RESOURCES, LLC (FORMERLY KNOWN AS ALTEGRA HEALTH OPERATING COMPANY LLC); CHANGE HEALTHCARE SOLUTIONS, LLC; CHANGE HEALTHCARE PERFORMANCE, INC. (FORMERLY KNOWN AS CHANGE HEALTHCARE, INC.); CHANGE HEALTHCARE OPERATIONS, LLC; CHANGE HEALTHCARE HOLDINGS, INC.; CHANGE HEALTHCARE TECHNOLOGIES, LLC (FORMERLY KNOWN AS MCKESSON TECHNOLOGIES LLC); CHANGE HEALTHCARE HOLDINGS, LLC
Reel/Frame 061620/0054 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2018
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE HOLDINGS, LLC
Reel/Frame 046449/0899 →
CHANGE OF ADDRESS Recorded Mar 23, 2017
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 042082/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2017
From: PF2 IP LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 041966/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2017
From: MCKESSON CORPORATION
To: PF2 IP LLC
Reel/Frame 041938/0501 →
SECURITY AGREEMENT Recorded Mar 2, 2017
From: CHANGE HEALTHCARE HOLDINGS, LLC; CHANGE HEALTHCARE, INC.; CHANGE HEALTHCARE HOLDINGS, INC.; CHANGE HEALTHCARE OPERATIONS, LLC; CHANGE HEALTHCARE SOLUTIONS, LLC; ALTEGRA HEALTH OPERATING COMPANY LLC; MCKESSON TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 041858/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2017
From: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
To: MCKESSON CORPORATION
Reel/Frame 041355/0408 →
CHANGE OF NAME Recorded Jan 11, 2017
From: MCKESSON FINANCIAL HOLDINGS
To: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
Reel/Frame 041329/0879 →
CHANGE OF NAME Recorded Jul 18, 2016
From: MCKESSON FINANCIAL HOLDINGS LIMITED
To: MCKESSON FINANCIAL HOLDINGS
Reel/Frame 039380/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2010
From: VOHRA, ANUJ; SARATHI, NIKHIL
To: MCKESSON FINANCIAL HOLDINGS LIMITED
Reel/Frame 025476/0130 →