US 11,916,727 B2
Processing high volume network data
Sharad R. Murthy, San Ramon, CA (US); Xinglang Wang, Shanghai (CN); and Rajeshwari Muthupandian, San Jose, CA (US)
Assigned to eBay Inc., San Jose, CA (US)
Appl. No. 14/901,376
Filed by eBay Inc., San Jose, CA (US)
PCT Filed Jan. 23, 2015, PCT No. PCT/CN2015/071442
§ 371(c)(1), (2) Date Dec. 28, 2015,
PCT Pub. No. WO2016/115734, PCT Pub. Date Jul. 28, 2016.
Prior Publication US 2018/0159731 A1, Jun. 7, 2018
Int. Cl. H04L 41/0806 (2022.01); G06F 16/2455 (2019.01); H04L 12/18 (2006.01); H04L 41/5003 (2022.01); H04L 43/0805 (2022.01); H04L 47/52 (2022.01); H04L 49/90 (2022.01); H04L 61/5007 (2022.01); H04L 69/16 (2022.01)
CPC H04L 41/0806 (2013.01) [G06F 16/24558 (2019.01); H04L 12/1859 (2013.01); H04L 41/5003 (2013.01); H04L 43/0805 (2013.01); H04L 47/522 (2013.01); H04L 49/90 (2013.01); H04L 61/5007 (2022.05); H04L 69/16 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
at least one processor and executable instructions accessible on a computer-readable medium that, when executed, cause the at least one processor to perform operations comprising:
receiving first data identifying consumer devices available to receive event messages linked to a topic included in a plurality of topics;
receiving second data identifying a producer device available to provide event messages linked to the topic;
linking a plurality of consumer values to the consumer devices, the plurality of consumer values being computed to form a logical ring of the computing devices, such that each computing device is represented by a consumer node on the logical ring, the logical ring corresponding to the topic based on the plurality of consumer values being generated specific to the topic;
accessing from the producer device a first data message linked to the topic, the first data message including a key value;
generating a value from the key value included in the first data message;
selecting a consumer device from the consumer devices by walking around the logical ring of consumer nodes starting at a point corresponding to the value generated from the key value until reaching a consumer value linked to the consumer device; and
providing the first data message to the selected consumer device, the consumer devices including a plurality of server machines over which a workload, to process the event messages, is distributed.