×

System having in-memory buffer service, temporary events file storage system and backup events file uploader service

  • US 9,658,801 B2
  • Filed: 12/21/2015
  • Issued: 05/23/2017
  • Est. Priority Date: 09/15/2015
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • a data store that is configured to store events; and

    a temporary events file storage system (TEFSS);

    a cluster of application servers each being configured to run a client application that generates events, wherein the cluster comprises;

    a first application server comprising;

    a capture service configured to;

    receive events generated by the client application running on the first application server and to provide the events to an in-memory buffer service that is configured to temporarily hold the events in a bounded buffer that is implemented in physical memory at the first application server, wherein the bounded buffer comprises a plurality of single-threaded buffer segments that are each configured to temporarily hold some of the events received from the capture service until a flush operation is performed, wherein each particular single-threaded buffer segment holds a plurality of events;

    a consumer executor service configured to;

    instantiate a plurality of consumer threads that each correspond to a particular single-threaded buffer segment, wherein each consumer thread comprises;

    an instance of an events reader that is configured to read events flushed from a corresponding single-threaded buffer segment and to add an identifier to each the events; and

    an instance of a direct events writer that is configured to attempt to directly write each event to the data store;

    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 a particular events file that includes a plurality of events flushed from an in-memory buffer service, and write that particular events file to the TEFSS; and

    a second application server comprising;

    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.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×