memcache :内存缓存
优点:
1、高性能、效率相对最高
缺点:
1、只支持简单的数据结构 string 一个value最大只支持1MB,而Redis最大支持512MB
2、不支持数据持久化
3、不支持数据同步
应用场景:
1、减轻数据库负载,提升性能,适合多读少写的数据
2、多台服务器session共享机制
3、记录用户登录密码错误次数
4、微信access_token的存储
redis :内存数据库
优点:
1、支持数据持久化,快照,AOF追加方式
2、支持多种数据结构,如:string、list、hash、set、zset等
缺点:
1、相对于memcache效率较低
应用场景:
1、排行榜应用 zset
2、计数器应用
3、获得共同好友,两组数据的交集 set
4、防攻击系统(ip判断)等等
mongodb:是一种文档性的数据库
优点:
1、支持数据持久化
2、面向文档,可以存放xml、json等数据
3、易扩展等
缺点:
1、相对于memcache和redis效率较低;
2、MongoDB不支持事务。
应用场景:
1、面向文档,可以存放xml、json等数据