IP Library › Granted Patent US 12,556,420
Granted Patent B2
US 12,556,420 · App. 18/475,083 · Granted Feb 17, 2026

Processing high volume network data

Inventors: Sharad R. Murthy (San Ramon, CA); Bhaven Avalani (Cupertino, CA); Hongyue Nemo Chen (Shanghai, CN); Tony Chung Tung Ng (San Ramon, CA); Weiwei Jin (Shanghai, CN); Xinglang Wang (Shanghai, CN); Mingming Wang (Shanghai, CN); Wei Fang (Shanghai, CN)
Assignee: eBay Inc.
H04L12/18H04L47/19H04L67/55
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 12,556,420
App. No.
18/475,083
Granted
Feb 17, 2026
Kind
B2
Abstract

Disclosed are a system comprising a computer-readable storage medium storing at least one program, and a computer-implemented method for event messaging over a network. A subscription interface receives data indicative of a subscription request for sessionized data. An allocation module allocates a sessionizer bank linked to the subscription request. A messaging interface module provisions identifiers linked to the respective processing engines of the sessionizer bank. The messaging interface module registers the allocated sessionizer bank as available to process event messages matching the subscription request by providing the provisioned identifiers. The messaging interface module receives event messages from a producer device linked by a collection server to a selected one of the processing engines of the sessionizer bank. The selected one of the processing engine processes the received event messages in accordance with session rule data linked to the subscription request to generate sessionized data.

Claims (46)

1 . A system for processing event messages comprising, the system comprising:

one or more processors; and

a non-transitory memory to store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving a first message comprising advertisement data indicating an availability of a first machine to receive data messages linked to a topic;

computing at least a first value based on the topic and an identifier of the first machine;

associating the first value with the first machine;

receiving an event message linked to the topic from a second machine, the event message comprising a second value; and

providing the event message to the first machine based at least on a correspondence between the first value and the second value, wherein the correspondence is determined by traversing a perimeter of a logical ring in a clockwise or anti-clockwise direction starting at a point of a hash of the second value until reaching a first hash value on the logical ring corresponding to the first machine based at least on correlating the hash on the second value to the first hash value, wherein the logical ring is formed for the topic by assigning one or more hash values to consumer devices using consistent hashing to partition a consumer cluster, wherein the logical ring comprises a ring of hash values instantiated for the topic.

2 . The system of claim 1 , the one or more processors to perform operations further comprising:

storing the first value to a registry that associates the first value to the first machine.

3 . The system of claim 1 , the one or more processors to perform operations further comprising:

determining the correspondence between the first value and the second value based at least on matching a hash of the second value to the first value.

4 . The system of claim 1 , the one or more processors to perform operations further comprising:

computing the first value to link the first machine and the second machine based on a second message that identifies the second machine as available to provide the data messages linked to the topic.

5 . The system of claim 4 , wherein the second message comprises a broadcast discovery message that includes at least one of a topic identifier for the topic, and an identifier for the second machine.

6 . The system of claim 1 , the one or more processors to perform operations further comprising:

computing the first value based on a consistent hashing ring associated with the topic.

7 . A method for processing event messages, the method comprising:

receiving first data identifying one or more consumer devices available to receive data messages linked to a topic;

linking a plurality of values to respective consumer devices of the one or more consumer devices based at least on the first data;

accessing from a producer device a first event message linked to the topic, the first event message comprising a key value; and

providing the first event message to a selected one of the one or more consumer devices based on a comparison performed using the key value and the plurality of values of the respective consumer devices, wherein the comparison is performed by traversing a perimeter of a logical ring in a clockwise or anti-clockwise direction starting at a point of a hash of the key value until reaching a first hash value on the logical ring corresponding to the selected one of the one or more consumer devices based at least on correlating the hash of the key value to the first hash value, wherein the logical ring is formed for the topic by assigning one or more hash values to consumer devices using consistent hashing to partition a consumer cluster, wherein the logical ring comprises a ring of hash values instantiated for the topic.

8 . The method of claim 7 , the method further comprising:

receiving second data identifying the producer device as available to provide the data messages linked to the topic.

9 . The method of claim 8 , wherein the second data comprises a broadcast discovery message that includes at least one of a topic identifier for the topic, and an identifier for the producer device.

10 . The method of claim 7 , the method further comprising:

computing the plurality of values based on a consistent hashing ring associated with the topic.

11 . The method of claim 7 , the method further comprising:

performing the comparison using the key value and the plurality of values based at least on matching a hash of the key value to the plurality of values.

12 . The method of claim 7 , the method further comprising:

computing for at least a first consumer device of the one or more consumer devices, at least a first value based on the topic and an identifier of the first consumer device.

13 . A system for processing event messages comprising, the system comprising:

one or more processors; and

a non-transitory memory to store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving first data comprising advertisement data identifying one or more consumer devices available to receive data messages linked to a topic;

computing, for each of the one or more consumer devices, at least a first value based on the topic and identifiers for the one or more consumer devices;

linking each respective consumer device of the one or more consumer devices to a respective first value;

accessing from a producer device a first event message linked to the topic, the first event message comprising a key value; and

providing the first event message to a selected one of the one or more consumer devices based on a comparison performed using the key value and the first value for each of the respective one or more consumer devices, wherein the comparison is performed by traversing a perimeter of a logical ring in a clockwise or anti-clockwise direction starting at a point of a hash of the key value until reaching a first hash value on the logical ring corresponding to the selected one of the one or more consumer devices based at least on correlating the hash of the key value to the first hash value, wherein the logical ring is formed for the topic by assigning one or more hash values to consumer devices using consistent hashing to partition a consumer cluster, wherein the logical ring comprises a ring of hash values instantiated for the topic.

14 . The system of claim 13 , the one or more processors to perform operations further comprising:

receiving second data identifying the producer device as available to provide the data messages linked to the topic.

15 . The system of claim 14 , wherein the second data comprises a broadcast discovery message that includes at least one of a topic identifier for the topic, and an identifier for the producer device.

16 . The system of claim 13 , the one or more processors to perform operations further comprising:

computing the first value based on a consistent hashing ring associated with the topic.

17 . The system of claim 13 , the one or more processors to perform operations further comprising:

performing the comparison using the key value and the first value for each of the respective one or more consumer devices based at least on matching a hash of the key value to the first value for each of the respective one or more consumer devices.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2024
From: MURTHY, SHARAD R.; AVALANI, BHAVEN; CHEN, HONGYUE NEMO; NG, TONY CHUN TUNG; JIN, WEIWEI; WANG, XINGLANG; WANG, MINGMING; FANG, WEI
To: EBAY INC.
Reel/Frame 067023/0848 →
Continuity (4)
Continuation 17149563 · Jan 14, 2021
Continuation 16545642 · Aug 20, 2019
Continuation 14901395
Related Publication 20240031294A1 · Jan 25, 2024
References Cited (88)
US 5852822A · Srinivasan et al. · 1998 [cited by applicant]
US 6061690A · Nori et al. · 2000 [cited by applicant]
US 6662206B1 · Banavar et al. · 2003 [cited by applicant]
US 7107282B1 · Yalamanchi · 2006 [cited by applicant]
US 7581170B2 · Baumgartner et al. · 2009 [cited by applicant]
US 7752552B2 · Pennington et al. · 2010 [cited by applicant]
US 8275816B1 · Pegg · 2012 [cited by applicant]
US 8296303B2 · Navas · 2012 [cited by applicant]
US 8768805B2 · Taylor et al. · 2014 [cited by applicant]
US 9094288B1 · Nucci et al. · 2015 [cited by applicant]
US 9166892B1 · Prado et al. · 2015 [cited by applicant]
US 9516047B2 · Rihn et al. · 2016 [cited by applicant]
US 9992269B1 · Odom et al. · 2018 [cited by applicant]
US 10425341B2 · Murthy et al. · 2019 [cited by applicant]
US 10924414B2 · Murthy et al. · 2021 [cited by applicant]
US 20010032206A1 · Seese et al. · 2001 [cited by applicant]
US 20030120720A1 · Montero · 2003 [cited by applicant]
US 20030184585A1 · Lin et al. · 2003 [cited by applicant]
US 20030208537A1 · Lane et al. · 2003 [cited by applicant]
US 20040001498A1 · Chen · 2004 [cited by examiner]
US 20050165925A1 · Dan et al. · 2005 [cited by applicant]
US 20050166187A1 · Das et al. · 2005 [cited by applicant]
US 20050256931A1 · Follmeg et al. · 2005 [cited by applicant]
US 20070106537A1 · Moore · 2007 [cited by applicant]
US 20070156656A1 · Pather et al. · 2007 [cited by applicant]
US 20070299980A1 · Amini et al. · 2007 [cited by applicant]
US 20080086558A1 · Bahadori et al. · 2008 [cited by applicant]
US 20080114829A1 · Button et al. · 2008 [cited by applicant]
US 20090106617A1 · Katis et al. · 2009 [cited by applicant]
US 20100125545A1 · Navas · 2010 [cited by applicant]
US 20100125584A1 · Navas · 2010 [cited by applicant]
US 20100257282A1 · Melamed · 2010 [cited by examiner]
US 20100281539A1 · Burns et al. · 2010 [cited by applicant]
US 20110216665A1 · Bali et al. · 2011 [cited by applicant]
US 20110258263A1 · Murthy et al. · 2011 [cited by applicant]
US 20120041929A1 · Kapoor · 2012 [cited by applicant]
US 20120278473A1 · Griffiths · 2012 [cited by applicant]
US 20130067024A1 · Vasters · 2013 [cited by applicant]
US 20130173747A1 · Kim et al. · 2013 [cited by applicant]
US 20130227139A1 · Suffling · 2013 [cited by applicant]
US 20130227193A1 · Maitra · 2013 [cited by applicant]
US 20130254132A1 · Srinath et al. · 2013 [cited by applicant]
US 20140059551A1 · Umanesan · 2014 [cited by applicant]
US 20140172427A1 · Liu et al. · 2014 [cited by applicant]
US 20140172506A1 · Parsell · 2014 [cited by applicant]
US 20140172992A1 · Frederick et al. · 2014 [cited by applicant]
US 20140180815A1 · Chatwin et al. · 2014 [cited by applicant]
US 20140279834A1 · Tsirogiannis et al. · 2014 [cited by applicant]
US 20140304426A1 · Eldar · 2014 [cited by applicant]
US 20140331311A1 · Zuk et al. · 2014 [cited by applicant]
US 20150026794A1 · Zuk et al. · 2015 [cited by applicant]
US 20150074191A1 · Feng et al. · 2015 [cited by applicant]
US 20150220678A1 · Srivastava · 2015 [cited by applicant]
US 20150294431A1 · Fiorucci et al. · 2015 [cited by applicant]
US 20150312177A1 · Ben-ezra et al. · 2015 [cited by applicant]
US 20160036838A1 · Jain et al. · 2016 [cited by applicant]
US 20160050261A1 · Mcdaid et al. · 2016 [cited by applicant]
US 20160085810A1 · De Castro et al. · 2016 [cited by applicant]
US 20160105370A1 · Mellor et al. · 2016 [cited by applicant]
US 20160182251A1 · Weygandt et al. · 2016 [cited by applicant]
US 20160188376A1 · Rosas et al. · 2016 [cited by applicant]
US 20160188426A1 · Kousha et al. · 2016 [cited by applicant]
US 20160219089A1 · Murthy et al. · 2016 [cited by applicant]
US 20170317935A1 · Murthy et al. · 2017 [cited by applicant]
US 20180159731A1 · Murthy et al. · 2018 [cited by applicant]
US 20190394133A1 · Murthy et al. · 2019 [cited by applicant]
US 20210160185A1 · Murthy et al. · 2021 [cited by applicant]
CA 2736282A1 · 2011 [cited by applicant]
CN 1340785A · 2002 [cited by applicant]
CN 1482558A · 2004 [cited by applicant]
CN 104144098A · 2008 [cited by applicant]
CN 101507270A · 2009 [cited by applicant]
CN 102222295A · 2011 [cited by applicant]
CN 102292946A · 2011 [cited by applicant]
CN 103067349A · 2013 [cited by applicant]
CN 103365907A · 2013 [cited by applicant]
CN 103501486A · 2014 [cited by applicant]
CN 107431664A · 2017 [cited by applicant]
EP 1418743A1 · 2004 [cited by applicant]
WO 2004059923A2 · 2004 [cited by applicant]
WO 2004059923A3 · 2004 [cited by applicant]
WO 2013142917A1 · 2013 [cited by applicant]
WO 2016115734A1 · 2016 [cited by applicant]
WO 2016115735A1 · 2016 [cited by applicant]
WO 2016118876A1 · 2016 [cited by applicant]
Cohen et al., “Descriptive Naming of Context Data Providers”, 19 Skyline Drive, Hawthorne, New York 10532, USA, 2005, pp. 112-125. [cited by applicant]
Khattak et al., “A Taxonomy of Botnet Behavior, Detection, and Defense”, Published in IEEE Communications Surveys & Tutorials, vol. 16, Issue 2, 2014, pp. 898-924. [cited by applicant]
Wikipedia, “Consistent Hashing”, https://en.wikipedia.org/wiki Consistent_hashing, Dec. 8, 2014, 4 pages. [cited by applicant]