码迷,mamicode.com
首页 > 系统相关 > 详细

分布式缓存 Memcached 学习

时间:2015-07-30 21:04:21      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:

一.安装服务端:

服务端:http://code.jellycan.com/files/memcached-1.2.6-win32-bin.zip

64:http://blog.couchbase.com/memcached-windows-64-bit-pre-release-available

1. 解压缩文件到c:\memcached

2. 命令行输入 ‘c:\memcached\memcached.exe -d install‘ 

3. 命令行输入 ‘c:\memcached\memcached.exe -d start‘ ,该命令启动 Memcached ,默认监听端口为 11211
  通过 memcached.exe -h 可以查看其帮助

安装可能出出现的问题:

技术分享

如果出现上图的问题:

1种情况是找到cmd.exe 右键管理员的身份运行就可以了

2是去服务那里看看是不是已经安装了

技术分享

二.下载客户端

客户端:http://sourceforge.net/projects/memcacheddotnet/

e:\memcached\memcached.exe -d install

 

三.使用

1. 将Commons.dll,ICSharpCode.SharpZipLib.dll,log4net.dll,Memcached.ClientLibrary.dll 等放到bin目录
2. 引用Memcached.ClientLibrary.dll

代码:

using System;
using Memcached.ClientLibrary;

namespace MemberCache
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] serverlist = { "127.0.0.1:11211", "127.0.0.1:11211" };

            //初始化池
            SockIOPool pool = SockIOPool.GetInstance();
            pool.SetServers(serverlist);

            pool.InitConnections = 3;
            pool.MinConnections = 3;
            pool.MaxConnections = 5;

            pool.SocketConnectTimeout = 1000;
            pool.SocketTimeout = 3000;

            pool.MaintenanceSleep = 30;
            pool.Failover = true;

            pool.Nagle = false;
            pool.Initialize();

            // 获得客户端实例
            MemcachedClient mc = new MemcachedClient();
            mc.EnableCompression = false;

            Console.WriteLine("------------测  试-----------");
            mc.Set("test", "my value");  //存储数据到缓存服务器,这里将字符串"my value"缓存,key 是"test"

            if (mc.KeyExists("test"))   //测试缓存存在key为test的项目
            {
                Console.WriteLine("test is Exists");
                Console.WriteLine(mc.Get("test").ToString());  //在缓存中获取key为test的项目
            }
            else
            {
                Console.WriteLine("test not Exists");
            }

            Console.ReadLine();

            mc.Delete("test");  //移除缓存中key为test的项目

            if (mc.KeyExists("test"))
            {
                Console.WriteLine("test is Exists");
                Console.WriteLine(mc.Get("test").ToString());
            }
            else
            {
                Console.WriteLine("test not Exists");
            }
            Console.ReadLine();
            SockIOPool.GetInstance().Shutdown();

        }
    }
}

运行结果:

技术分享

 

最后:写的不好,看的不爽你就来打我。  

分布式缓存 Memcached 学习

标签:

原文地址:http://www.cnblogs.com/yinrq/p/4690513.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!