发明名称 Systems and methods for storing and transferring message data
摘要 Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing and transferring messages. An example method includes providing a queue having an ordered plurality of storage blocks. Each storage block stores one or more respective messages and is associated with a respective time. The times increase from a block designating a head of the queue to a block designating a tail of the queue. The method also includes reading, by each of a plurality of first sender processes, messages from one or more blocks in the queue beginning at the head of the queue. The read messages are sent, by each of the plurality of first sender processes, to a respective recipient. One or more of the blocks are designated as old when they have associated times that are earlier than a first time. A block is designated as a new head of the queue when the block is associated with a time later than or equal to the first time. One or more of the first sender processes is allowed to read messages from the old blocks until a second time which is later than the first time. One or more of the old blocks are deleted at a time later than or equal to the second time.
申请公布号 US9319365(B1) 申请公布日期 2016.04.19
申请号 US201514879689 申请日期 2015.10.09
申请人 Machine Zone, Inc. 发明人 Milyakov Igor
分类号 G06F15/173;H04L12/58;H04L29/06;G06F12/08;H04L29/08 主分类号 G06F15/173
代理机构 Goodwin Procter LLP 代理人 Goodwin Procter LLP
主权项 1. A method comprising: performing by one or more computers: providing a queue comprising an ordered plurality of storage blocks, each storage block storing one or more respective messages and being associated with a respective time, wherein the times increase from a block designating a head of the queue to a block designating a tail of the queue;reading, by each of a plurality of first sender processes, messages from one or more blocks in the queue beginning at the head of the queue;sending, by each of the plurality of first sender processes, the read messages to a respective recipient;designating as old one or more of the blocks having associated times that are earlier than a first time;designating a block associated with a time later than or equal to the first time as a new head of the queue;allowing one or more of the first sender processes to read messages from the old blocks until a second time which is later than the first time; anddeleting from the queue one or more of the old blocks at a time later than or equal to the second time.
地址 Palo Alto CA US