我一直在做它是否正常或不緩存.NET會話狀態在外部的Dbs如Redis的,MongoDB的,或其它高度可擴展的工具的一些研究。.NET會話狀態緩存與Redis的,MongoDB的,ServiceStack
我的研究結果是,儘管MongoDB有更多的集成來完成這種事情,但似乎Redis性能更高,並且有更多選擇(關鍵過期,集合等)使用。
還有一個叫做ServiceStack的其他框架,它有一個RedisClient的實現,但是它的實現方式遠比我想要的要好得多。
public override object OnGet(CachedOrders request)
{
var cacheKey = "some_unique_key_for_order";
return base.RequestContext.ToOptimizedResultUsingCache(this.CacheClient, cacheKey,() =>
{
//This delegate will be executed if the cache doesn't have an item
//with the provided key
//Return here your response DTO
//It will be cached automatically
});
}
所以這個研究之後,我想知道你的意見,你是否在你的任何應用程序中實現這種緩存。你能分享你的經驗嗎?
謝謝!