System and method for the automated brokerage of financial instruments
First Claim
1. A method comprising:
- processing by a server a plurality of activity requests from a user, the server residing in a multi-tier automated financial instrument brokerage system, the brokerage system further comprising a backend database in a separate tier from the server for storing customer account data, wherein processing at least some of the activity requests uses customer account data retrieved from the backend database;
maintaining an application-in-memory cache that is resident in the server;
storing customer account data retrieved from the backend database in the application-in-memory cache of the server;
determining, according to a plurality of predetermined usage rules, whether to use the customer account data stored in the application-in-memory cache of the server instead of the customer account data retrieved from the backend database when processing activity requests; and
refreshing the customer account data stored in the application-in-memory cache in response to a multicast packet, wherein the multicast packet is provided upon acknowledgement of a financial transaction.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed herein in a preferred embodiment is an automated financial instrument brokerage system wherein a front end layer interacts with customers to generate activity requests for an intermediate layer. The intermediate layer preferably processes the activity requests and places financial instrument orders on a financial market if appropriate. A backend layer preferably provides data to the intermediate layer for processing activity requests. Multiple heterogeneous front end customer applications may be supported by the same intermediate layer. Further, multiple backend layer applications may interact with the intermediate layer in a manner transparent to the front end layer. Further, scalability can be achieved be partitioning various tasks of the intermediate layer onto separate servers, and more preferably on separate redundant servers. Load balancers may then be used in the intermediate layer to provide distributed access to these servers. Also disclosed herein is a caching technique whereby turnaround time for processing activity requests can be reduced by reducing the number of times that the intermediate layer needs to interact with the backend layer.
173 Citations
31 Claims
-
1. A method comprising:
- processing by a server a plurality of activity requests from a user, the server residing in a multi-tier automated financial instrument brokerage system, the brokerage system further comprising a backend database in a separate tier from the server for storing customer account data, wherein processing at least some of the activity requests uses customer account data retrieved from the backend database;
maintaining an application-in-memory cache that is resident in the server; storing customer account data retrieved from the backend database in the application-in-memory cache of the server; determining, according to a plurality of predetermined usage rules, whether to use the customer account data stored in the application-in-memory cache of the server instead of the customer account data retrieved from the backend database when processing activity requests; and refreshing the customer account data stored in the application-in-memory cache in response to a multicast packet, wherein the multicast packet is provided upon acknowledgement of a financial transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
- processing by a server a plurality of activity requests from a user, the server residing in a multi-tier automated financial instrument brokerage system, the brokerage system further comprising a backend database in a separate tier from the server for storing customer account data, wherein processing at least some of the activity requests uses customer account data retrieved from the backend database;
-
16. An apparatus comprising:
-
an automated financial instrument brokerage system having a plurality of tiers, wherein each tier includes at least one server dedicated to a particular task, the brokerage system comprising (1) a front end server for processing a plurality of heterogeneous activity requests received over an internet from a remote user, (2) a backend database located in a backend tier for storing customer account data, and (3) an application-in-memory cache that is resident in at least one server located in an intermediate tier, wherein at least some of the activity requests need customer account data for processing; wherein the intermediate tier server is configured to (1) store customer account data retrieved from the backend database in the application-in-memory cache, (2) determine, according to a plurality of predetermined usage rules, whether to use the customer account data stored in the application-in-memory cache of the intermediate tier server instead of the customer account data retrieved from the backend database when processing activity requests, and (3) update the customer account data stored in the application-in-memory cache in response to a multicast packet, wherein the multicast packet is provided upon acknowledgement of a financial transaction. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
Specification