在微服务架构中,分布式是一定需要的。因为我们的服务器是分布式集群,数据库是集群。这回给我们的缓存带来挑战。
那么这个时候 我们的缓存也必须要是分布式的吗?还是说也可以只用一个cache server?
先不考虑那么多 先考虑一定用分布式缓存。
分布式缓存有两种:
一种是一JBoss cache为代表的互相通信同步的分布式缓存。他是每台服务器上都部署app和cache。
另一种是以memcache为代表的互相不通信的分布式缓存。缓存与应用分离部署,缓存系统部署在一组专门的服务器上,应用程序通过一致性Hash等路由算法选择缓存服务器远程访问缓存数据,缓存服务器之间不通信,缓存集群的规模可以很容易地实现扩容,具有良好的可伸缩性。
分布式缓存一般用Redis或者memcache 其区别是什么?