如何在c#中使用带有amazon elasticache的enyim memcached客户端

时间:2014-01-10 10:10:51

标签: c# caching memcached amazon-elasticache enyim.caching

我在Amazon ElastiCache上创建了一个缓存集群。它给了我一个端点地址。 现在我想将数据存储在Amazon ElastiCache中。为此,我正在使用enyim memcached客户端。

服务器给出错误;

  

Enyim.Caching.Memcached.ServerPool的类型初始化程序抛出错误

我的配置看起来像这样;

<enyim.com>
    <memcached>
      <servers>
        <!-- put your own server(s) here-->
        <add address="<MyendPointAddress" port="11211" />
      </servers>
      <socketPool minPoolSize="10" maxPoolSize="100"
      connectionTimeout="00:01:10" deadTimeout="00:05:00" />
    </memcached>
  </enyim.com>

在C#中,我写过这样的东西;

using (MemcachedClient client = new MemcachedClient())
            {
                client.Store(Enyim.Caching.Memcached.StoreMode.Add, key, value);
                var l = client.Get(key);
            }

当我使用本地主机时,代码不会抛出任何错误,但不会存储任何内容。

编辑: 现在我已转移到BeIT memcached客户端。它运行正常,但是返回null作为Get()请求的输出。

1 个答案:

答案 0 :(得分:1)

不要使用配置节点,ElastiCache设置一个配置端点,您可以使用它们拥有的Java或PHP库,或者自己动手来获取节点。他们记录了大多数如何在开发人员文档中使用此配置节点。

这样做的好处是,无论何时添加或删除节点,您都不必重新配置应用程序,只需询问memcached配置节点即可。

如果您不想这样做,那么只需转到节点并将它们添加到您的配置中,就像您刚刚拥有一堆Memcached服务器一样。