一、概念
1、MemoryCache 是 C#/.NET 应用程序中自带的缓存库。
2、Memcached 是一个分布式缓存服务器,在不同语言的应用程序中都可以使用。
二、异同
1、都是用于内存缓存的工具。
2、分布式部署支持
MemoryCache 对象是在单台服务器上运行的,并且仅限于该服务器的范围内;
Memcached 可以跨多个应用服务器进行部署和使用,它使用分布式缓存存储模型将数据分散到多个节点。
3、线程安全
MemoryCache 是被设计成线程安全的;
Memcached 需要开发人员采取特殊措施来避免在并发访问时出现冲突。
4、内存管理机制
MemoryCache 采用了 .NET CLR 的内存管理机制。当系统内存紧张时,CLR 自动清除旧的缓存项以释放更多内存。
Memcached 使用 LRU(最近最少使用)算法管理内存。当缓存空间不足时,它会先删除最近未使用的缓存项。
三、总结
如果只需要在单个服务器上缓存少量数据,则可以使用 MemoryCache;如果需要将数据分散到多个节点以提高性能,Memcached是更好的选择。
标签:缓存,MemoryCache,C#,内存,服务器,Memcached From: https://www.cnblogs.com/qq2806933146xiaobai/p/17505122.html