您的位置:首页 > 数据库 > Memcache

分布式缓存方案:Memcached初探

2008-07-30 23:06 399 查看
.net 框架中为我们提供了一个Cache对象用来处理系统缓存,Cache对象使用起来非常方便,

相信大家对Cache对象应该不会陌生。然而Cache对象缓存的对象存放本机的内存,这样便限制了我们缓存对象的大小和数量。

在这篇文章中我主要想介绍一个开源项目:memcached(一个提供分布式缓存策略的项目)

Memcached在一些大型java与PHP项目中有较广泛的应用(例如FaceBook)。通过memcached建立一个可管理的且相对独立的缓存层,减少应用程序与数据库之间的频繁访问。这正是memcached的魅力所在。

本文不讨论memcached的内部实现机制。主要是讲述一下memcached的具体使用方法(更具体一点应该是memcached在。Net下使用)。

Memcached的使用主要分两部分:memcached服务器端架设与memcached客户端调用。

下面分别讲述一下具体操作。

memcached服务器端架设:我们从网上下载memcached的WIN32服务端安装包。本文中用的是memcached-1.2.1-win32版。

我们解压文件到一个目录memcached。然后打开命令行窗口,用dos命令跳转到memcached目录下,执行如下命令:

C:"memcached>memcached.exe -d install

C:"memcached>memcached.exe -d start

-d参数是开启守护进程。默认开启的是本机的11211端口

其他参数可以用-h查看。

这样我们的服务器端就架好了,很容易。

卸载的命令为:

C:"memcached>memcached.exe -d stop

C:"memcached>memcached.exe -d uninstall

memcached客户端调用:我们也从网上下载memcached的.net(C#)的客户端API包,

本文用的是memcacheddotnet_clientlib-1.1.5.zip版本。

注意:一个客户端可以调用多个memcached服务端。(也就是说一个项目可以架多个memcached服务端)当然这些memcached服务端应该在不同的服务器上,,不然没有任何意义。

下面用一个实例来讲解如何使用memcached的ClientAPI.

新建一个WEBSITE项目。

我们要在项目中引入Commons.dll; ICSharpCode.SharpZipLib.dll; Memcached.ClientLibrary.dll

在default.aspx.cs的代码如下:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using Memcached.ClientLibrary;

namespace Memcachled

结果我就不贴出来了。

文中的 memcacheddotnet_clientlib-1.1.5.zip与memcached-1.2.1-win32.zip我明天整理下再发上来。很晚啦~.

写的匆忙,有不对之处,还望见谅!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: