zoukankan      html  css  js  c++  java
  • Memcache 学习记录

    Memcache简介:

    Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。

    Memcache使用

    第一步:安装Memcache服务端

      32位链接:https://pan.baidu.com/s/1bpEYRDX 密码:jyu6

       64位链接:https://pan.baidu.com/s/1nuVtktb 密码:pqiw

       1 解压缩文件到c:memcached(随便哪个盘都行)
       2 命令行输入 'c:memcachedmemcached.exe -d install' 
       3 命令行输入 'c:memcachedmemcached.exe -d start' ,该命令启动 Memcached ,默认监听端口为 11211

    到此就可以在系统服务中找到Memcache服务了

    第二步:下载所需库文件

    链接:https://pan.baidu.com/s/1i4Dk3qP 密码:gch7

    Commons.dll

    ICSharpCode.SharpZipLib.dll

    log4net.dll

    Memcached.ClientLibrary.dll

    第三步:封装设置和获取

     1 using Memcached.ClientLibrary;
     2 using System;
     3 using System.Collections.Generic;
     4 using System.Linq;
     5 using System.Web;
     6 
     7 
     8 public class MemcacheHelper
     9 {
    10     private static readonly MemcachedClient mc = null;
    11     static MemcacheHelper()
    12     {
    13         string[] serverlist = { "127.0.0.1:11211", "10.0.0.132:11211" };
    14 
    15         //初始化池
    16         SockIOPool pool = SockIOPool.GetInstance();
    17         pool.SetServers(serverlist);
    18 
    19         pool.InitConnections = 3;
    20         pool.MinConnections = 3;
    21         pool.MaxConnections = 5;
    22 
    23         pool.SocketConnectTimeout = 1000;
    24         pool.SocketTimeout = 3000;
    25 
    26         pool.MaintenanceSleep = 30;
    27         pool.Failover = true;
    28 
    29         pool.Nagle = false;
    30         pool.Initialize();
    31 
    32         // 获得客户端实例
    33         mc = new MemcachedClient();
    34         mc.EnableCompression = false;
    35 
    36     }
    37     /// <summary>
    38     /// 向Memcache存储数据
    39     /// </summary>
    40     /// <param name="key"></param>
    41     /// <param name="value"></param>
    42     public static void Set(string key, object value)
    43     {
    44         mc.Set(key, value);
    45     }
    46     /// <summary>
    47     /// 向Memcache存储数据
    48     /// </summary>
    49     /// <param name="key"></param>
    50     /// <param name="value"></param>
    51     /// <param name="time"></param>
    52     public static void Set(string key, object value, DateTime time)
    53     {
    54         mc.Set(key, value, time);
    55     }
    56     /// <summary>
    57     /// 获取Memcache中的数据
    58     /// </summary>
    59     /// <param name="key"></param>
    60     /// <returns></returns>
    61     public static object Get(string key)
    62     {
    63         if (mc.KeyExists(key))
    64         {
    65             return mc.Get(key);
    66         }
    67         return null;
    68     }
    69     /// <summary>
    70     /// 删除
    71     /// </summary>
    72     /// <param name="key"></param>
    73     /// <returns></returns>
    74     public static bool Delete(string key)
    75     {
    76         if (mc.KeyExists(key))
    77         {
    78             return mc.Delete(key);
    79         }
    80         return false;
    81     }
    82 }

    serverlist中存储的是缓存服务器的IP地址和端口号,在实际项目中缓存服务器的IP地址和端口号一遍都存在配置文件中一遍修改和添加

  • 相关阅读:
    使用VSCode创建简单的Razor Webapp--1.入门
    ASP.NET Razor 常用示例
    ASP.NET Razor 语法
    ASP.NET Razor简介
    EF CodeFirst 一对一、一对多、多对多关系
    mysql外键
    EF CodeFirst 之 Fluent API
    替换JDK 对eclipse的影响?
    mysql数据库,安装 !创建!...详解!
    Apache的commons工具类
  • 原文地址:https://www.cnblogs.com/zhhwDavidblog/p/8058479.html
Copyright © 2011-2022 走看看