redis和amp;之间的区别是什么? memcached,哪一个最适合用于聊天应用,任何建议
答案 0 :(得分:4)
正如Terry Cho所说,主要区别在于存储数据的方法。
Memcaching将数据存储在每台服务器的RAM中,或存储在内存缓存服务器的RAM中。 Redis将数据存储在内存数据库中,而Redis中的每个操作几乎都具有O(1)的操作复杂性,这使得它非常快。
就个人而言,我使用Redis进行缓存,因为我可以在服务器集群之间共享相同的缓存并自动设置数据到期,这仍然保持了检索数据的最小操作复杂性。
对于聊天应用程序,Redis可以更好地工作,因为如果服务器重新启动,您可能希望数据持续存在。我会使用像MongoDB或PostgreSQL这样的数据库来获得持久聊天应用程序的最佳性能。
答案 1 :(得分:2)
主要区别是
memcached是缓存,Redis是IMDB(在内存数据库中)。
这意味着,在memcached中,数据已满,它将被驱逐逻辑(如LRU等)删除。如果服务器关闭,整个数据将丢失。
但是在Redis的情况下,它会将数据保存到文件中,所以即使它已经崩溃,它也可以恢复数据。
另外还有这么多差异。只有那些是基于内存的K / V商店。
Redis可以支持群集和主/从复制,数据模型也不同等。