Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 27351|Răspunde: 1

[Redis] Redis. Componenta open-source .NET Beetle.Redis

[Copiază linkul]
Postat pe 29.12.2015 11:58:16 | | | |
Beetle.Redis este un client Redis open-source pentru componenta .net care oferă o modalitate foarte simplă pentru dezvoltatori de a accesa ușor Redis, oferind în același timp suport pentru formate de date pentru json și protobuf. Accesul implicit bazat pe pool-uri de conexiuni permite dezvoltatorilor să acceseze Redis succint și eficient, fără a se îngrijora de o serie de lucruri complexe precum threading-ul și sincronizarea conexiunii.
dispoziție

  1. <configSections>
  2.     <section name="redisClientSection" type="Beetle.Redis.RedisClientSection, Beetle.Redis, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
  3.   </configSections>
  4.   <redisClientSection dB="0"  xmlns="urn:Beetle.Redis">
  5.     <writes>
  6.       <add host="192.168.0.105" connections="9"/>
  7.     </writes>
  8.     <reads>
  9.       <add host="192.168.0.105" connections="9"/>
  10.     </reads>
  11.   </redisClientSection>
Cod de copiere

Configurațiile de mai sus sunt adresele serviciului de citire/scriere, iar numărul implicit de conexiuni este 9, iar accesul la bază de date este 0. Mai multe informații de serviciu redis pot fi configurate în funcție de nevoile aplicației reale.


Utilizarea componentei este foarte simplă, nu este nevoie să se definească informațiile de conexiune ca alte componente client Redis înainte de utilizare, iar componenta va folosi automat mediul de configurare redisClientSection pentru a opera serviciul Redis corespunzător implicit.


String Get/Set


  1. StringKey key = "HENRY";
  2.             string Remark = "henryfan gz cn 18 [email]henryfan@msn.com[/email] 28304340";
  3.             key.Set(Remark);
  4.             Assert.AreEqual(Remark, key.Get());
Cod de copiere
Json Get/Set


  1. JsonKey rk = "henry_json";
  2.             UserBase ub = new UserBase();
  3.             ub.Name = "henryfan";
  4.             ub.City = "gz";
  5.             ub.Counrty = "cn";
  6.             ub.Age = 10;
  7.             rk.Set(ub);
  8.             Assert.AreEqual(ub.Name, rk.Get().Name);
Cod de copiere
Protobuf Get/Set


  1. ProtobufKey rk = "henry_protobuf";
  2.             UserBase ub = new UserBase();
  3.             ub.Name = "henryfan";
  4.             ub.City = "gz";
  5.             ub.Counrty = "cn";
  6.             ub.Age = 10;
  7.             rk.Set(ub);
  8.             Assert.AreEqual(ub.Name, rk.Get().Name);
Cod de copiere


Listă


  1. [TestMethod]
  2.         public void LST_POP_PUSH()
  3.         {
  4.             ProtobufList lst = "USERS";
  5.             lst.Push(new UserBase { Name = "henry", Age = 18, City = "gz", Counrty = "cn" });
  6.             Assert.AreEqual("henry", lst.Pop().Name);
  7.         }
  8.         [TestMethod]
  9.         public void LST_REMOVE_ADD()
  10.         {
  11.             ProtobufList lst = "USERS";
  12.             lst.Add(new UserBase { Name = "henry", Age = 18, City = "gz", Counrty = "cn" });
  13.             lst.Add(new UserBase { Name = "bbq", Age = 18, City = "gz", Counrty = "cn" });
  14.             Assert.AreEqual("bbq", lst.Remove().Name);
  15.         }
  16.         [TestMethod]
  17.         public void LST_Length()
  18.         {
  19.             ProtobufList lst = "USERS";
  20.             lst.Clear();
  21.             lst.Add(new UserBase { Name = "henry", Age = 18, City = "gz", Counrty = "cn" });
  22.             lst.Add(new UserBase { Name = "bbq", Age = 18, City = "gz", Counrty = "cn" });
  23.             Assert.AreEqual(lst.Count(), 2);
  24.         }
  25.         [TestMethod]
  26.         public void LST_Region()
  27.         {
  28.             ProtobufList lst ="USERS";
  29.             lst.Clear();
  30.             for (int i = 0; i < 10; i++)
  31.             {
  32.                 lst.Add(new UserBase { Name = "henry" + i, Age = 18, City = "gz", Counrty = "cn" });
  33.             }
  34.             IList items = lst.Range();
  35.             Assert.AreEqual(items[0].Name, "henry0");
  36.             Assert.AreEqual(items[9].Name, "henry9");
  37.             items = lst.Range(5, 7);
  38.             Assert.AreEqual(items[0].Name, "henry5");
  39.             Assert.AreEqual(items[2].Name, "henry7");
  40.         }
Cod de copiere
MapSet


  1. [TestMethod]
  2.         public void MapSet()
  3.         {

  4.             JsonMapSet map = "HENRY_INFO";
  5.             UserBase ub = new UserBase();
  6.             ub.Name = "henryfan";
  7.             ub.City = "gz";
  8.             ub.Counrty = "cn";
  9.             ub.Age = 10;
  10.             Contact contact = new Contact();
  11.             contact.EMail = "hernyfan@msn.com";
  12.             contact.QQ = "28304340";
  13.             contact.Phone = "13660223497";
  14.             map.Set(ub, contact);
  15.             IList data = map.Get();
  16.             Assert.AreEqual(ub.Name, ((UserBase)data[0]).Name);
  17.             Assert.AreEqual(contact.Phone, ((Contact)data[1]).Phone);

  18.         }
  19.         [TestMethod]
  20.         public void MapSetdRemove()
  21.         {
  22.             JsonMapSet map = "HENRY_INFO";
  23.             UserBase ub = new UserBase();
  24.             ub.Name = "henryfan";
  25.             ub.City = "gz";
  26.             ub.Counrty = "cn";
  27.             ub.Age = 10;
  28.             Contact contact = new Contact();
  29.             contact.EMail = "hernyfan@msn.com";
  30.             contact.QQ = "28304340";
  31.             contact.Phone = "13660223497";
  32.             map.Set(ub, contact);
  33.             map.Remove();
  34.             contact = map.Get();
  35.             Assert.AreEqual(null, contact);

  36.         }
  37.         [TestMethod]
  38.         public void MapSetClear()
  39.         {
  40.             JsonMapSet map = "HENRY_INFO";
  41.             UserBase ub = new UserBase();
  42.             ub.Name = "henryfan";
  43.             ub.City = "gz";
  44.             ub.Counrty = "cn";
  45.             ub.Age = 10;
  46.             Contact contact = new Contact();
  47.             contact.EMail = "hernyfan@msn.com";
  48.             contact.QQ = "28304340";
  49.             contact.Phone = "13660223497";
  50.             map.Set(ub, contact);
  51.             map.Clear();
  52.             IList data = map.Get();
  53.             Assert.AreEqual(null, data[0]);
  54.             Assert.AreEqual(null, data[1]);
  55.         }
Cod de copiere


performanță

Exemplu
Descărca

Beetle.Redis.0.6.6.5.rar (244.2 KB, Numărul de descărcări: 1)




Precedent:schema de configurare sessionState cookieless
Următor:5 lucruri pe care trebuie să le știi înainte de a folosi Redis
Postat pe 22.09.2021 20:25:08 |
Învață să înveți...
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com