System having in-memory buffer service, temporary events file storage system and backup events file uploader service
First Claim
1. A system, comprising:
- a data store comprising memory that is configured to store events; and
a temporary events file storage system (TEFSS);
a cluster of application servers each comprising one or more hardware-based processors, wherein each of the application servers are configured to run a client application that generates events, wherein the cluster comprises;
a first application server comprising one or more hardware-based processors configured to execute;
an indirect events writer that is invoked when events generated by the first application server are unable to be directly written to the data store, comprising;
a plurality of event capture threads each being configured to;
generate at least one events file and write the at least one events file to the TEFSS, wherein each events file includes a plurality of events flushed from an in-memory buffer service; and
a second application server comprising one or more hardware-based processors configured to execute;
an events file uploader service that is configured to;
determine that the first application server is inactive;
read at least one events file from the TEFSS; and
write the events from each of the events files that was read to the data store.
1 Assignment
0 Petitions
Accused Products
Abstract
Computer-implemented methods and systems are provided. The system includes a data store that is configured to store events in an event table, a temporary events file storage system (TEFSS), and a cluster of application servers. The cluster includes a first application server that generates events, and a second application server that includes an events file uploader service. When the first application server is unable to directly write events to the data store, an indirect events writer generates events file(s), and writes the events file(s) to the TEFSS. Each events file includes a plurality of events flushed from an in-memory buffer service at the first application server. When the events file uploader service determines that the first application server is inactive, it reads the events file(s) from the TEFSS, and writes the events from each of the events files to the data store.
-
Citations
28 Claims
-
1. A system, comprising:
-
a data store comprising memory that is configured to store events; and a temporary events file storage system (TEFSS); a cluster of application servers each comprising one or more hardware-based processors, wherein each of the application servers are configured to run a client application that generates events, wherein the cluster comprises; a first application server comprising one or more hardware-based processors configured to execute; an indirect events writer that is invoked when events generated by the first application server are unable to be directly written to the data store, comprising; a plurality of event capture threads each being configured to; generate at least one events file and write the at least one events file to the TEFSS, wherein each events file includes a plurality of events flushed from an in-memory buffer service; and a second application server comprising one or more hardware-based processors configured to execute; an events file uploader service that is configured to;
determine that the first application server is inactive;
read at least one events file from the TEFSS; andwrite the events from each of the events files that was read to the data store. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable medium including instructions, which when executed by a processing system at an application server having an in-memory buffer service, are configurable to cause the processing system to perform a method, comprising:
-
instantiating, at an indirect events writer, a plurality of event capture threads each comprising an events file writer; generating, at each events file writer, a particular events file that comprises a plurality of events received from the in-memory buffer service when those events are unable to be directly written to a data store; and writing, via each events file writer, the particular events file to a temporary events file storage system (TEFSS), wherein the TEFSS comprises memory that is configured to temporarily store each events file from each events file writer for subsequent writing to the data store, wherein each events file comprises; a file name comprising;
an application server name of the application server that generated the events in the events file;a creation date for each of the events in the events file; and
a thread identifier that specifies a name of an event capture thread writing the events file;a group identifier that uniquely identifies a group of events files that were generated during a particular time window; and a plurality of events that are serialized. - View Dependent Claims (20, 21)
-
-
22. A non-transitory computer-readable medium including instructions, which when executed by a hardware-based processing system at a first application server, are configurable to cause the hardware-based processing system to perform a method for storing events in a data store that comprises an events uploader job detail table that comprises a plurality of rows each being configured to store an uploader job record, the method comprising:
-
determining that a second application server is inactive, wherein the first application server and second application server are part of a cluster of application servers; executing, at the first application server, an events file uploader service that includes an events uploader manager that maintains each of the uploader job records, wherein each uploader job record includes job detail information that points to a particular events file stored in the TEFSS, wherein each uploader job record comprises;
a cluster identifier that uniquely identifies a collection of instances that a grouped as a cluster;
an instance identifier that uniquely identifies a collection of application servers grouped as an instance;
an application server name of a particular application server; and
a group identifier that uniquely identifies a group of events files that were generated during a particular time window;reading one or more events files from memory of a temporary events file storage system (TEFSS), wherein each events file was written to the TEFSS by an indirect events writer of the second application server, and wherein each events file comprises a plurality of events; and writing, via the events file uploader service, each event from each of the events files that were read to the data store. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. A computer-implemented method, comprising:
-
at a first application server comprising one or more hardware-based processors configured to execute;
an in-memory buffer service, and an indirect events writer that is configured to instantiate a plurality of event capture threads each comprising an instance of an events file writer;generating, at each events file writer of each event capture thread, a particular events file that comprises a plurality of events received from the in-memory buffer service when those events are unable to be directly written to a data store; writing, via each events file writer of each event capture thread, the particular events file to a temporary events file storage system (TEFSS) that is configured to temporarily store one or more events files for subsequent writing to the data store; executing, at one or more hardware-based processors of a second application server, an events file uploader service, wherein executing the events file uploader service comprises; determining that the first application server is inactive; reading at least one events file from the TEFSS that was written by the indirect events writer of the first application server; and writing the plurality of events from each events file that was read to the data store.
-
Specification