我刚刚开始切换到memcached,目前正在使用memcached进行测试.
我有2个对象,我创建了一个对象并在其上放置了[Serializable](例如,让我们调用它Object1
),另一个对象是使用Linq DBML(Object2
)创建的.
我试着memcached List
,它工作得很好,就像魅力一样,这里的一切都是缓存和正确加载.
但接着,我转到Linq对象,现在我尝试添加到memcached List
这不起作用,它根本没有添加到memcached.没有添加密钥
我继续前进并将序列化模式更改为单向,再次添加,仍然没有希望.
反正有没有让这项工作?
这是我刚刚编写的简单测试,使用codeplex中的MemcachedProvider来演示:
public ActionResult Test() { var returnObj = DistCache.Get>("testKey"); if (returnObj == null) { DataContext _db = new DataContext(); returnObj = _db.Posts.ToList(); DistCache.Add("testKey", returnObj, new TimeSpan(29, 0, 0, 0)); _db.Dispose(); } return Content(returnObj.First().TITLE); }
这是来自Memcached,没有调用STORE:
> NOT FOUND _x_testKey >532 END <528 get _x_testKey > NOT FOUND _x_testKey >528 END <516 get _x_testKey > NOT FOUND _x_testKey >516 END
在我的SQL分析器中,它调用3个查询3个测试时间=>证明从Memcached返回的对象为null,然后查询.