Memcached数据存储测试.docx

上传人:b****5 文档编号:3715749 上传时间:2022-11-24 格式:DOCX 页数:10 大小:293.20KB
下载 相关 举报
Memcached数据存储测试.docx_第1页
第1页 / 共10页
Memcached数据存储测试.docx_第2页
第2页 / 共10页
Memcached数据存储测试.docx_第3页
第3页 / 共10页
Memcached数据存储测试.docx_第4页
第4页 / 共10页
Memcached数据存储测试.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

Memcached数据存储测试.docx

《Memcached数据存储测试.docx》由会员分享,可在线阅读,更多相关《Memcached数据存储测试.docx(10页珍藏版)》请在冰豆网上搜索。

Memcached数据存储测试.docx

Memcached数据存储测试

 直接入题:

不设置过期时间(立即过期)

 

  1        当插入同一大小的数据,充满设定空间时,再插入同样大小的数据,查看前面的数据是否存在。

(结束:

重启服务)

  

viewplaincopytoclipboardprint?

1.int a = 1;  

2.         // 单个字符时:

能存数量13107;  

3.         while(true)  

4.         {  

5.             if(a>13107)  

6.             {  

7.                 // 测试1.2:

取第一条数据:

  

8.                 Console.WriteLine("取第一条数据:

"+cache.Get("a1"));  

9.  

10.                 // 测试1.3:

 数据满后,再插入一条同样大小的,取第一条  

11.                 cache.Add("A" + a++, "a", DateTime.Now);  

12.  

13.                 Console.WriteLine("数据满后,再插入一条同样大小的,取数据:

" + cache.Get("a1"));  

14.  

15.                 break;  

16.             }  

17.  

18.             // 测试1.1:

 加入同样小数据(立即过期)  

19.             cache.Add("A" + a++, "a", DateTime.Now);  

20.  

21.  

22.         }  

结果:

(没有数据),过期数据不能取出,这个很明显

内存占用情况:

(发现内存空间有剩余 629,空间没有完全消费)

 

 2 (重启服务)当插入同一大小的数据,充满设定空间时,再插入不同大小的数据(比原数据大),查看前面的数据是否存在。

viewplaincopytoclipboardprint?

1.#region 测试2 小数据中加大数据(立即过期)  

2.  

3.           int a = 1;  

4.           // 单个字符时:

能存数量13107;  

5.           while (true)  

6.           {  

7.               if (a > 13107)  

8.               {  

9.                   // 测试1.2:

取第一条数据:

  

10.                   Console.WriteLine("取第一条数据:

" + cache.Get("a1"));  

11.  

12.                   // 测试1.3:

 数据满后,再插入一条大一点的数据,取第一条(立即过期)  

13.                   largeCustomer.Name = "WT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached Test";  

14.                   largeCustomer.IsMan = true;  

15.                   cache.Add("Large" + a++, largeCustomer);  

16.                   Console.WriteLine("数据满后,再插入一条同样大小的,取数据:

" + cache.Get("a1"));  

17.  

18.                   break;  

19.               }  

20.  

21.               // 测试1.1:

 加入同样小数据(立即过期)  

22.               cache.Add("A" + a++, "a", DateTime.Now);  

23.  

24.           } 

25. 

26.           #endregion  

 

结果:

与1一样

内存使用情况:

(开辟了新的空间)

 

设置过期时间(永不过期)

1 重启服务,当插入同一大小的数据,充满设定空间时,再插入同样大小的数据,查看前面的数据是否存在。

viewplaincopytoclipboardprint?

1.#region 测试3 insert同样大小的数据(不过期)  

2.  

3.          int a = 1;  

4.          // 单个字符时:

能存数量13107;  

5.          while (true)  

6.          {  

7.              if (a > 13107)  

8.              {  

9.                  // 测试1.2:

取第一条数据:

  

10.                  Console.WriteLine("取第一条数据:

" + cache.Get("A1"));  

11.  

12.                  // 测试1.3:

 数据满后,再插入一条同样大小的数据,取第一条。

  

13.                  cache.Add("A" + a++, "a");  

14.                  Console.WriteLine("数据满后,再插入一条同样大小的,取数据:

" + cache.Get("A1"));  

15.  

16.                  break;  

17.              }  

18.  

19.              // 测试1.1:

 加入同样小数据  

20.              cache.Add("A" + a++, "a");  

21.  

22.          } 

23. 

24.          #endregion  

结果:

 

内存使用情况:

没有开辟新空间,新的key值占了最先插入的key(A1)的空间。

 

 

2 当插入同一大小的数据,充满设定空间时,再插入不同大小的数据(比原数据大),查看前面的数据是否存在。

(结束:

重启服务)

 

viewplaincopytoclipboardprint?

1.#region 测试4 小数据中加大数据(不过期)  

2.  

3.       int a = 1;  

4.       // 单个字符时:

能存数量13107;  

5.       while (true)  

6.       {  

7.           if (a > 13107)  

8.           {  

9.               // 测试1.2:

取第一条数据:

  

10.               Console.WriteLine("取第一条数据:

" + cache.Get("A1"));  

11.  

12.               // 测试1.3:

 数据满后,再插入一条大的数据,取第一条。

  

13.               largeCustomer.Name = "WT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached TestWT's Memcached Test";  

14.               largeCustomer.IsMan = true;  

15.               cache.Add("Large" + a++, largeCustomer);  

16.               Console.WriteLine("数据满后,再插入一条同样大小的,取数据:

" + cache.Get("A1"));  

17.  

18.               break;  

19.           }  

20.  

21.           // 测试1.1:

 加入同样小数据  

22.           cache.Add("A" + a++, "a");  

23.  

24.       } 

25. 

26.       #endregion  

结果:

内存使用情况:

(新开辟了一个slab,原始数据保留)

 

由于上面服务的memcached空间,我设置的是1M;于是改为了10M;于是,我做了第5的个测试

插入同种数据,key(不一样),发现它会挤满10M.

 

然后,我再插入一条大小不一致的数据,我发现他又开辟了1M空间(我总共设置了10M)

测试Demo下载Memcached存储机制测试

 

 

 

总结:

您需要结合《Memcached

(二):

Memcached的结构、存储规则探索》理论,有利于你理解下面的图。

 

  

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1