在ASP.NET中使用Memcached
来源:百度文库 编辑:神马文学网 时间:2024/04/28 00:50:24
现在一些.NET开发人员开始放弃ASP.NET内置的缓存机制,转而使用Memcached——一种分布式的内存缓存系统,其最初是由Danga Interactive公司为LiveJournal网站而开发。
存的一个基础性问题就是如何处理过时数据。当运行在单独的Web服务器上,你可以很容易地清除一个已经确认被改变了的缓存。可惜,ASP.NET没有一个很好的方法来支持多服务器。每个服务器上的缓存都对其他缓存的改变一无所知。
ASP.NET允许通过基于文件系统和数据库表的触发器来作废一个缓存。然而,这也存在问题,比如数据库触发器需要使用昂贵的轮询,以及触发器本身冗长的编程。但是,我们还是有其他的选择的。
不像ASP.NET内置的缓存机制,Memcached是一个分布式的缓存系统。任何Web服务器都能更新或删除一个缓存项,并且所有其他的服务器都能在下次访问这些缓存项的时候自动获取到更新的内容。这是通过把这些缓存项存储在一个或者多个缓存服务器上来实现的。每一个缓存项都根据它的关键字的哈希值来分配到一个服务器上。
表面看来,Memcached针对ASP.NET的API就像和内置的API一样。这让开发人员很容易地转换到Memcached上,仅仅通过在代码中查找和替换即可实现。
然而仅仅只是让其运行起来还不够,如果要在大型Web Farms(译者注:大型站点)正确地使用还需要注意一些问题。Richard Jones写到: 当我们添加很多节点后,get_multi函数的有用性在降低——这可能是由于单独的页面,需要访问几乎所有的Memcached实例。我在某处读到Facebook(译者注:现在很火的校园社交网站)把他们的Memcached集群进行分割以提高get_multi的性能(例如,所有用户的数据都放置在名为mc的子集节点上)。有人能告诉我这样做的效果吗?
在ASP.NET中使用Memcached
asp.net中使用fck
在asp.net中使用session常见问题集锦
ASP.NET中TreeView控件使用小结
ASP.NET 2.0中XSLT的使用
ASP.NET 2.0中XSLT的使用
在ASP中使用RSS
Asp.Net开发]从"在 Internet Explorer 中使用 Windows 窗体控件"开始谈Smart Client
在ASP.NET中使用LINQ(第一部分) - Scott Guthrie 博客中文版 -...
asp.net中怎样在页面间传值?
在 ASP.NET 中使用计时器执行用户代码(原创代码) - 天若有情.NET - 博客园
ASP.NET中使用AJAX时如何弹出对话框
ASP.NET中使用AJAX时如何弹出对话框
在ASP中使用类class
如何在asp.net中如何在线播放视频文件1
在Dreamweaver中构建ASP.net开发环境
在asp.net中自动给url地址加上超链接
技巧/诀窍:在ASP.NET中重写URL
在ASP.NET中设置html文件的访问验证
在Vs.net中Ado.net访问Sybase 12。5数据库总结! - ASP.NET开...
在Vs.net中Ado.net访问Sybase 12。5数据库总结! - ASP.NET开...
一步步学会使用ASP.NET 4 WEB应用程序中使用URL Routing(翻译) - ...
Memcached在大型网站中应用
Memcached在大型网站中应用