Memcached缓存在.Net 中的使用(memcacheddotnet)

缓存对于提高大数据量的网站性能无疑不是一个很好的解决方案,针对缓存的使用网上同仁介绍很多,再次我仅仅分享一下自己对Memcached使用的简单介绍。Memchached的使用通过第三方DLL来完成,常用的第三方类库如下:memcacheddotnet、EnyimMemcached。这里主要介绍memcacheddotnet,代码下载  DLL下载  自定义Demo1下载  官方Demo2下载 。

windows  memcached下载 memchaced的配置,这里不做解释,网上同仁写的很详细;

针对Memchaced分布式缓存,memcacheddotnet也封装了相应的方法,详细使用可以参考官方Demo2中的内容;

使用方式也特别方便,举出部分主要代码如下

 class Program
    {
        static void Main(string[] args)
        {
            SockIOPool pool = SockIOPool.GetInstance();
            string[] servers = { "127.0.0.1:11211" };
            pool.SetServers(servers);
            pool.MinConnections = 3;
            pool.MaxConnections = 5;
            pool.InitConnections = 3;
            pool.SocketConnectTimeout = 5000;
            pool.Initialize();

            MemcachedClient client = new MemcachedClient();
            client.EnableCompression = false;
            Console.WriteLine("----------------------------Set-----------");
            client.Set("key1", "value1");
            Console.WriteLine(client.Get("key1"));            
            Console.WriteLine("---------------------------replay---------");
            client.Replace("key1", "Replay new Key1");
            Console.WriteLine(client.Get("key1"));
            Console.WriteLine("---------------------------键值是否存在----");
            if (client.KeyExists("key2"))
            {
                Console.WriteLine("key2存在");
            }
            else
            {
                Console.WriteLine("key2不存在,设置新值");
                client.Set("key2", "New key2");
            }
            Console.WriteLine("-------------------------删除数据--------");
            client.Delete("key2");
            Console.WriteLine("删除之后的数据: " + client.Get("key2"));

            Console.WriteLine("-------------------------数据过期--------");
            client.Add("key3", "新数据三内容", DateTime.Now.AddMilliseconds(5000));
            Console.WriteLine(client.Get("key5"));
            System.Threading.Thread.Sleep(6000);
            Console.WriteLine("过期: "+ client.Get("key5"));

            Console.ReadLine();


        }
    }

 

Memcached 安装配置

  1. 安装memcached:

    c:\memcached> memcached.exe -d install

  2. 启动memcached:

    c:\memcached> memcached.exe -d start

    (之后屏幕无任何提示,但是在“任务管理器”中勾选“显示所有用户进程”,此时可以看到memcached.exe进程正在运行)

    默认端口11211,外部访问需要开放该端口,否则无法成功连接。

  3. memcached基本参数设置:

    -p 监听的端口
    -l 连接的IP地址, 默认是本机
    -d start 启动memcached服务
    -d restart 重起memcached服务
    -d stop|shutdown 关闭正在运行的memcached服务
    -d install 安装memcached服务
    -d uninstall 卸载memcached服务
    -u 以的身份运行 (仅在以root运行的时候有效)
    -m 最大内存使用,单位MB。默认64MB
    -M 内存耗尽时返回错误,而不是删除项
    -c 最大同时连接数,默认是1024
    -f 块大小增长因子,默认是1.25
    -n 最小分配空间,key+value+flags默认是48
    -h 显示帮助

      设置参数时需要先停止memcached,然后用命令行设置,比如:c:\memcached> memcached.exe -m 1 -d start

  4. 停止memcached:

    c:\memcached> memcached.exe -d stop

  5. 卸载memcached:

    c:\memcached> memcached.exe -d uninstall

 

 

几篇不错的博客文章,推荐一下:

http://www.cnblogs.com/qingyuan/archive/2011/01/17/1937855.html

 

http://www.cnblogs.com/hsapphire/archive/2009/12/25/1632179.html

 

另外还有一篇缓存的误区:

http://kb.cnblogs.com/page/138696/

Memcached 安装配置:

http://www.cnblogs.com/jiajinyi/p/3531381.html

 

posted @ 2015-10-09 12:27  jiajinhao  阅读(328)  评论(0编辑  收藏  举报