摘要:
缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载。缓存是解决这个问题的好办法。但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够灵活。此时Memcached或许是你想要的。Memcached是什么?Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。Memcached能缓存什么?通过在内存里维护一个统一的巨大的hash表,Memcached能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。Memcached快么 阅读全文
posted @ 2013-03-12 11:36
duanxz
阅读(263)
评论(0)
推荐(0)
摘要:
在大型web应用中,缓存可算是当今的一个标准开发配置了。在大规模的缓存应用中,应运而生了分布式缓存系统。分布式缓存系统的基本原理,大家也有所耳闻。key-value如何均匀的分散到集群中?说到此,最常规的方式莫过于hash取模的方式。比如集群中可用机器适量为N,那么key值为K的的数据请求很简单的应该路由到hash(K) mod N对应的机器。的确,这种结构是简单的,也是实用的。但是在一些高速发展的web系统中,这样的解决方案仍有些缺陷。随着系统访问压力的增长,缓存系统不得不通过增加机器节点的方式提高集群的相应速度和数据承载量。增加机器意味着按照hash取模的方式,在增加机器节点的这一时刻,大 阅读全文
posted @ 2013-03-12 11:35
duanxz
阅读(273)
评论(0)
推荐(0)
摘要:
1概述通常情况下我们运行程序的过程中会产生一些中间数据,这些中间数据需要在将来的某个时间读取。这就要求我们要把它存在一个提供高速存取的地方,最好的选择就是内存中。基于这个以及多个原因需要我们把这部分存储到其他机器上,这样就产生了分布式缓存的问题。实际上分布式缓存根本上就是提供一个附加内存让另一台机器帮忙存储和查找数据。2实现方法首先建立一个集合对象,该集合对象应保证线程安全。代码如下所示Code1 public static class MemObject2{3static MemObject()4{5MemObjl = new Dictionary<string, object> 阅读全文
posted @ 2013-03-12 11:33
duanxz
阅读(885)
评论(0)
推荐(0)
浙公网安备 33010602011771号