Redis 簡易訊息佇列

來源:互聯網
上載者:User

標籤:

為了保持程式的高效,建議使用ProtoBuf.

Google Protocol Buffer( 簡稱 Protobuf) 是 Google 公司內部的混合語言資料標準,目前已經正在使用的有超過 48,162 種報文格式定義和超過 12,183 個 .proto 檔案。他們用於 RPC 系統和持續資料存放區系統。

Protocol Buffers 是一種輕便高效的結構化資料存放區格式,可以用於結構化資料序列化,或者說序列化。

Net中使用也很簡單,在NuGet 擷取,使用特性標記即可,有點類似wcf中的契約.

    [ProtoContract]    public class TestQuene    {        [ProtoMember(1)]        public int Id        {            get;            set;        }

簡單的隊列隊列入隊與出隊測試,效果還不錯.

       for (int i = 0; i < 100; i++)            {                MemoryStream xmlw = new MemoryStream();                TestQuene TempTest = new TestQuene() { Id = i, data = new List<string>(new string[] { "1", "2", "3" }) };                Serializer.Serialize<TestQuene>(xmlw, TempTest);                message = Convert.ToBase64String(xmlw.ToArray());                Console.WriteLine("EnqueueItemOnList=" + message);                redis.EnqueueItemOnList("MessageQuene", message);            }
      ThreadPool.UnsafeQueueUserWorkItem(o =>            {                while (true)                {                    try                    {                        MemoryStream ms = new MemoryStream(Convert.FromBase64String(redis.BlockingPopItemFromList("MessageQuene", TimeSpan.FromHours(2))));                        Console.WriteLine("while=" + Serializer.Deserialize<TestQuene>(ms));                    }                    catch (Exception ex)                    {                        Debug.WriteLine(ex.ToString());                    }                }            }, null);

 

Redis 簡易訊息佇列

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.