Patents by Inventor John Reed Riley

John Reed Riley has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11431662
    Abstract: Techniques for message deduplication are described. In one embodiment, an apparatus may comprise a client front-end component operative to receive an incoming message at a messaging system from a messaging client on a client device; extract a deduplication token from the incoming message; store the incoming message in a message queue where examining the deduplication token determines that the incoming message does not duplicate any existing message of the messaging system; and discard the incoming message where examining the deduplication token determines that the incoming message does duplicate an existing message; and a message deduplication component operative to examine the deduplication token to determine whether the incoming message duplicates any existing message of the messaging system. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 28, 2017
    Date of Patent: August 30, 2022
    Assignee: META PLATFORMS, INC.
    Inventors: Zardosht Kasheff, John Reed Riley, Jeremy David Fein, Jason Curtis Jenks
  • Patent number: 11405343
    Abstract: Techniques for extensible message indexing are described. In one embodiment, an apparatus may comprise a client front-end component of a messaging system operative to receive an incoming message from a client device; identify a sending client service for the incoming message at the client front-end component; determine a service identifier index value for the sending client service at the client front-end component; and store the incoming message in a message queue using the service identifier index value. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 29, 2017
    Date of Patent: August 2, 2022
    Assignee: META PLATFORMS, INC.
    Inventors: Winston Felix Popowicz Handte, Sonjeev Jahagirdar, Zardosht Kasheff, John Reed Riley
  • Publication number: 20190207892
    Abstract: Techniques for extensible message indexing are described. In one embodiment, an apparatus may comprise a client front-end component of a messaging system operative to receive an incoming message from a client device; identify a sending client service for the incoming message at the client front-end component; determine a service identifier index value for the sending client service at the client front-end component; and store the incoming message in a message queue using the service identifier index value. Other embodiments are described and claimed.
    Type: Application
    Filed: December 29, 2017
    Publication date: July 4, 2019
    Inventors: Winston Felix Popowicz Handte, Sonjeev Jahagirdar, Zardosht Kasheff, John Reed Riley
  • Publication number: 20190207887
    Abstract: Techniques for message deduplication are described. In one embodiment, an apparatus may comprise a client front-end component operative to receive an incoming message at a messaging system from a messaging client on a client device; extract a deduplication token from the incoming message; store the incoming message in a message queue where examining the deduplication token determines that the incoming message does not duplicate any existing message of the messaging system; and discard the incoming message where examining the deduplication token determines that the incoming message does duplicate an existing message; and a message deduplication component operative to examine the deduplication token to determine whether the incoming message duplicates any existing message of the messaging system. Other embodiments are described and claimed.
    Type: Application
    Filed: December 28, 2017
    Publication date: July 4, 2019
    Inventors: Zardosht Kasheff, John Reed Riley, Jeremy David Fein, Jason Curtis Jenks
  • Publication number: 20190207888
    Abstract: Techniques for message indexing are described. In one embodiment, an apparatus may comprise a client front-end component operative to receive an incoming message from a client device at a client front-end component for a messaging system; and extract a message identifier for the incoming message from the incoming message, wherein the message identifier uniquely identifies the incoming message; and a message queue operative to store the incoming message in a message storage system based on indexing the incoming message based on the message identifier. Other embodiments are described and claimed.
    Type: Application
    Filed: December 28, 2017
    Publication date: July 4, 2019
    Inventors: Zardosht Kasheff, Ron Eizenband, John Reed Riley, Huan Yan Wang, Sean Bradley Quinlan, Jason Curtis Jenks, Jeremy David Fein, Sean Navid Aryana
  • Publication number: 20160043978
    Abstract: Techniques for hot snapshotting for message syncing are described. An apparatus may comprise a network component and a snapshot component. The network component may be operative to receiving an incoming update. The snapshot component may be operative to retrieve a messaging snapshot for a user associated with the incoming update; identify a messaging thread corresponding to the incoming update; apply the incoming update to the messaging thread; determining that a number of messaging threads stored in the messaging snapshot is greater than a thread storage limit for the messaging snapshot; identify a least-recently-updated messaging thread currently stored in the messaging snapshot; and remove the least-recently updated messaging thread from the messaging snapshot.
    Type: Application
    Filed: February 13, 2015
    Publication date: February 11, 2016
    Applicant: Facebook, Inc.
    Inventors: Simon Jack Jenkins, James Minturn Sedgwick, John Reed Riley, Jason Curtis Jenks, Rahul Iyer
  • Patent number: 8166097
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.
    Type: Grant
    Filed: August 22, 2011
    Date of Patent: April 24, 2012
    Assignee: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Publication number: 20120005254
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.
    Type: Application
    Filed: August 22, 2011
    Publication date: January 5, 2012
    Applicant: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Patent number: 8068443
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed timers in an overlay network. Embodiments of the invention can be used to replicate timers within an overlay network and can be used to make progress towards completing a portion of work within the overlay network based on a replicated timer. Accordingly, embodiments of the invention can be used to increase the availability of timer data as well as compensate for node failures within an overlay network.
    Type: Grant
    Filed: June 23, 2009
    Date of Patent: November 29, 2011
    Assignee: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Patent number: 8032578
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.
    Type: Grant
    Filed: May 5, 2011
    Date of Patent: October 4, 2011
    Assignee: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Publication number: 20110208796
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.
    Type: Application
    Filed: May 5, 2011
    Publication date: August 25, 2011
    Applicant: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Patent number: 7984094
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.
    Type: Grant
    Filed: June 23, 2009
    Date of Patent: July 19, 2011
    Assignee: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Publication number: 20100322256
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed timers in an overlay network. Embodiments of the invention can be used to replicate timers within an overlay network and can be used to make progress towards completing a portion of work within the overlay network based on a replicated timer. Accordingly, embodiments of the invention can be used to increase the availability of timer data as well as compensate for node failures within an overlay network.
    Type: Application
    Filed: June 23, 2009
    Publication date: December 23, 2010
    Applicant: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck
  • Publication number: 20100325190
    Abstract: The present invention extends to methods, systems, and computer program products for using distributed queues in an overlay network. Embodiments of the invention can be used to replicate queue state (e.g., inserted and/or deleted messages) within an overlay network and can be used to continue a process at a different node within the overlay network based on replicated queue state. Accordingly, embodiments of the invention can be used to increase the availability of queue state, compensate for node failures within an overlay network, and promote replication of consistent queue state between nodes within an overlay network.
    Type: Application
    Filed: June 23, 2009
    Publication date: December 23, 2010
    Applicant: Microsoft Corporation
    Inventors: John Reed Riley, David A. Wortendyke, Michael J. Marucheck