该文章简单记录一下在Windows平台下安装与配置Memcached的方法,Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。

1、下载Memcached for Windows

  点击下载(版本1.4.5)

  说明:win64bit 1.4.4 这个版本的MemCached有网友说 设置缓存过期时间和大并发的时候缓存会失败,因此推荐安装1.4.5的版本,该版本会更稳定

2、安装Memcached

  把下载下来的Memcached文件放到D盘,我的路径如下:

  D:\Cache\memcached\64bit

  

2.1、命令行安装

  我的系统时64bit,因此我安装的是64位的Memcached-1.4.5

  安装命令:

  1、以管理员身份运行 cmd.exe

  2、进入到memcached文件夹
    C:\Users\chenlong1>D:

    D:\>cd Cache\memcached\64bit

  3、安装
    D:\Cache\memcached\64bit>memcached-1.4.5.exe -d install

  4、启动
    D:\Cache\memcached\64bit>memcached-1.4.5.exe -d start

 

Memcached的安装就此结束,Memcached是以windows服务运行的,下面我们来看一下我们的Memcached是否安装成功了

cmd  命令 services.msc 打开windows服务,找到memcached服务,说明安装成功

安装参数介绍:

  输入命令:D:\Cache\memcached\64bit>memcached-1.4.5.exe -h 可以查看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 显示帮助

2.2 bat批处理文件安装

1、安装启动memcached的批处理命令如下:

echo start install memcached
cd D:\Cache\memcached\
memcached-1.4..exe -d install
echo start memcached service
memcached-1.4..exe -d start
echo end
pause

2、停止和卸载memcached的批处理命令如下:

echo start uninstall memcached
cd D:\Cache\memcached\
memcached-1.4..exe -d stop memcached-1.4..exe -d uninstall
echo end
pause

以管理员的身份运行批处理文件,即可安装或卸载memcached服务

3、.net程序中使用memcached

由于现在的项目中使用了EnyimMemcached.2.13操作memcached缓存,因此我也介绍一下EnyimMemcached的简单使用

通过Nuget安装EnyimMemcached.2.13

1、Web.config配置文件

<configuration>
<configSections>
<sectionGroup name="enyim.com">
<section name="memcached" type="Enyim.Caching.Configuration.MemcachedClientSection,Enyim.Caching" />
</sectionGroup>
<section name="memcached" type="Enyim.Caching.Configuration.MemcachedClientSection, Enyim.Caching"/>
</configSections>
<enyim.com>
<memcached>
<servers>
<!-- put your own server(s) here-->
<add address="127.0.0.1" port="" />
</servers>
<socketPool minPoolSize="" maxPoolSize="" connectionTimeout="00:00:10" deadTimeout="00:02:00" />
</memcached>
</enyim.com> <memcached keyTransformer="Enyim.Caching.TigerHashTransformer,Enyim.Caching">
<servers>
<add address="127.0.0.1" port="" />
</servers>
<socketPool minPoolSize="" maxPoolSize="" connectionTimeout="00:00:10" deadTimeout="00:02:00" />
</memcached>
</configuration>

2、MemCachedHelper

using Enyim.Caching;
using Enyim.Caching.Configuration;
using Enyim.Caching.Memcached;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks; namespace ClassLibrary1
{
public sealed class MemCachedHelper
{
private static MemcachedClient MemClient;
static readonly object padlock = new object(); //线程安全的单例模式
public static MemcachedClient getInstance()
{
if (MemClient == null)
{
lock (padlock)
{
if (MemClient == null)
{
MemClientInit();
}
}
}
return MemClient;
}
//初始化缓存
static void MemClientInit()
{
try
{
MemClient = new MemcachedClient("enyim.com/memcached");
}
catch (Exception ex)
{
throw ex;
}
}
//构造函数
static MemCachedHelper()
{
getInstance();
} public static void Store(string Key, object Value, DateTime ExpiredAt)
{
MemClient.Store(StoreMode.Set, Key, Value, ExpiredAt);
} public static T Get<T>(string Key)
{
return MemClient.Get<T>(Key);
} public static void Remove(string Key)
{
MemClient.Remove(Key);
} }
}

3、调用测试

本文参考:

  http://www.cnblogs.com/lucky_hu/p/4676734.html

  

  

Memcached使用小记的更多相关文章

  1. igbinary vs serialize vs json_encode

    igbinary vs serialize vs json_encode 2010-04-18 @ 23:01:58 · 作者 Volcano · 归类于 php 你可能会感兴趣的内容 关于" ...

  2. Django 最好的缓存memcached的使用 小记

    嗯,咳咳咳咳咳,这是在win平台上.linux平台上没折腾 首先你要在win上安装 Memcache 下载 :点我下载 里面有x64 和 x86 的.根据自己的系统版本来选择使用   使用命令行: 1 ...

  3. memcached 小记

    Memcached是一个自由开源的,高性能,分布式内存对象缓存系统. Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串.对象).这些数据可以是数据库调用.API ...

  4. Memcached集群/分布式/高可用 及 Magent缓存代理搭建过程 详解

    当网站访问量达到一定时,如何做Memcached集群,又如何高可用,是接下来要讨论的问题. 有这么一段文字来描述“Memcached集群” Memcached如何处理容错的? 不处理!:) 在memc ...

  5. 支持 .NET Core 的 Memcached 客户端 EnyimMemcachedCore

    1. 介绍 EnyimMemcachedCore 是一个支持 .NET Core 的 Memcached 客户端,是从 EnyimMemcached 迁移至 .NET Core的,源代码托管在 Git ...

  6. Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作

    一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...

  7. ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存

    ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存 part 1:给我点时间,允许我感慨一下2016年 正好有时间,总结一下最近使用的一些技术,也算是为2016年画上一个完 ...

  8. 缓存、队列(Memcached、redis、RabbitMQ)

    本章内容: Memcached 简介.安装.使用 Python 操作 Memcached 天生支持集群 redis 简介.安装.使用.实例 Python 操作 Redis String.Hash.Li ...

  9. [原]Paste.deploy 与 WSGI, keystone 小记

    Paste.deploy 与 WSGI, keystone 小记 名词解释: Paste.deploy 是一个WSGI工具包,用于更方便的管理WSGI应用, 可以通过配置文件,将WSGI应用加载起来. ...

随机推荐

  1. 在数学建模中学MATLAB

    为期三周的数学建模国赛培训昨天正式结束了,还是有一定的收获的,尤其是在MATLAB的使用上. 1. 一些MATLAB的基础性东西: 元胞数组的使用:http://blog.csdn.net/z1137 ...

  2. APP测试工具之TraceView卡顿检测

    Traceview卡顿检测 Traceview是Android平台特有的数据采集和分析工具,集成在DDMS工具中,可以采集程序中的方法执行耗时.调用关系.调用次数以及资源占用等情况. 一.使用方法 1 ...

  3. Linux内核分析第五周学习总结:扒开系统调用的三层皮(下)

    韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.给MenuO ...

  4. DIOCP之EchoServer分析

    constructor TfrmMain.Create(AOwner: TComponent);begin inherited Create(AOwner); sfLogger.setAppender ...

  5. 开源PLM软件Aras详解二 汉化以及界面

    Aras安装完毕之后,默认语言为英语,对于国内很多制造业并不适用,那么下面就来说说如何汉化 首先下载汉化包:zh-cn_languagepack-110v3.zip 步骤如下: 步骤1- 设定安装程序 ...

  6. unity3d使用脚本保存屏幕截图

    using UnityEngine; using System.Collections; using System.IO; public class FrameAnimation : MonoBeha ...

  7. sublime txt 设置在浏览器预览

    1. 安装SideBarEnhancements插件 ctrl+shift+p —> Install Package —> 找到SideBarEnhancements 2. 配置预览快捷键 ...

  8. JavaScript parseInt() toString()函数

    parseInt(string, radix) string:必需.要被解析的字符串 radix:可选.表示要解析的数字的基数.该值介于 2 ~ 36 之间. 如果省略该参数或其值为 0,则数字将以 ...

  9. java JVM垃圾回收机制

    Java语言出来之前,大家都在拼命的写C或者C++的程序,而此时存在一个很大的矛盾,C++等语言创建对象要不断的去开辟空间,不用的时候有需要不断的去释放控件,既要写构造函数,又要写析构函数,很多时候都 ...

  10. SDN 收集一下最近的资料

      SDN导论 SDN原理(Openflow)视频 SDN lab SDN Openflow(北航入门简介) 书籍 <深度解析SDN-利益.战略.技术.实践> -张卫峰