gtxyzz

分布式缓存系统memcahce入门教程

gtxyzz 运维技术 2022-11-21 563浏览 0

这篇开始决定把系列文章的名字改掉,想了个好名字,反正不是玩单机版的就行了。好了,这篇我们看看一种非持久化的缓存服务器memcache,说到缓存本能反映就是cache,session什么的,是的,可以说这些都是基于.net进程的,通俗点也就做不了多机器的共享,典型的一个就是SSO。

专题推荐:回味那些经典的分布式文件系统

一: 安装

memcahce像redis,mongodb一样都需要开启他们自己的服务端,我们下载Memcached_1.2.5.zip,然后放到C盘,修改文件

名为memcached。

1:install

install可以说是万能通用命令,首先我们转到memcached目录,然后memcached.exe -d install 即可。

分布式缓存系统memcahce入门教程

2:start

现在我们只要启动start即可,要注意的就是memecache默认的端口是11211,当然我也不想重新指定端口了。

分布式缓存系统memcahce入门教程

3:stop,uninstall

这两个就不截图了,一个是停止,一个是卸载,反正都是万能通用命令。

二:驱动程序

memcache的服务器我们就已经开启好了,由于在公司最近一直都在用php,算了还是用C#驱动吧,谁让这是.net

社区呢,下载C#驱动,既然是缓存服务器,只要有基本的CURD,我想应该就差不多了。

1usingSystem;
2usingSystem.Collections.Generic;
4namespaceBeIT.MemCached
5{
6classExample
7{
8publicstaticvoidMain(string[]args)
9{
10//通过配置文件初始化memcache实例
11MemcachedClientcache=MemcachedClient.GetInstance("MyConfigFileCache");
13//编辑(可以模拟session操作,缓存20分钟)
14cache.Set("name","一线码农",DateTime.Now.AddMinutes(20));
16//获取
17varresult=cache.Get("name");
19Console.WriteLine("获取name的缓存数据为:"+result);
21//删除
22cache.Delete("name");
24Console.WriteLine("\n成功删除cache中name的数据");
26result=cache.Get("name");
28Console.WriteLine("\n再次获取cache中name的数据为:"+(result??"null")+"\n");
30//查看下memecahce的运行情况
31foreach(KeyValuePair<string,Dictionary<string,string>>hostincache.Status())
32{
33Console.Out.WriteLine("Host:"+host.Key);
34foreach(KeyValuePair<string,string>iteminhost.Value)
35{
36Console.Out.WriteLine("\t"+item.Key+":"+item.Value);
37}
38Console.Out.WriteLine();
39}
41Console.Read();
42}
43}
44}

我们再定义下配置文件,既然memcache可以用于分布式,那就避免不了将cache分摊到几台服务器上去,可以看到,下面的

配置也是非常简单的,当然分配的法则自然是memcache自身的算法决定的,最后别忘了在另一台服务器上开放一个端口就它

就行了。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="beitmemcached" type="System.Configuration.NameValueSectionHandler" />
  </configSections>
  <appSettings>
  </appSettings>
  <beitmemcached>
    <add key="MyConfigFileCache" value="127.0.0.1:11211" />
    <!--<add key="MyConfigFileCache" value="127.0.0.1:11211,127.0.0.1:8888" />-->
  </beitmemcached>
</configuration>

分布式缓存系统memcahce入门教程

下面是打包程序:BeITMemcached,也可以到codegoogle去下载。

继续浏览有关 分布式 的文章
发表评论