首先,大家先了解一下三者的概念究竟是什么?有哪些功能?工作原理?
一、RabbitMQ
1.消息型中间件,用于不同应用之间的通信,基于amqp协议实现
2.功能:将一些无需要及时返回而且耗时的操作提取出来,进行解耦,利用异步处理,提高系统的吞吐量
3工作原理:A生产消息,发送给服务器的exchange
exchange收到消息根据routinkey,将消息发送给匹配的queue,
queue收到消息,将消息发送给接受方
接收方接收消息后发送给ack给queue,
queue收到ack,删除队列中缓存的消息
4.集群节点分配
集群元数据:保存集群及其节点相关信息,存储在集群的每一个节点中
disc节点
ram节点
二.memcached
1.缓存型中间件,通过解耦,减轻数据库的负担
2.优势:开源,高性能,分布式,在内存中以键值方式存在
3.流程:客户端发送请求,若请求的数据在memcached服务器,则直接将结果返回用户,若结果不在,则从数据库中找出内容返回用户,并且缓存一份在memcached中,更新数据库,也会跟新memecached,若内存不足,则替换原来的数据。
三、mongodb
mongodb是一个基于分布式文件存储的数据库,由C++语言编写。
它旨在为WEB应用提供可扩展的高性能数据存储解决方案,最大的特点是支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
其次,就是给大家分享面试必备MongoDB+RabbitMQ+Memcached面试题及答案,因为内容过多,所以只展示了部分面试题和答案!!
第二版:Memcached23道1.Memcached是什么,有什么作用?
2、Memcached服务在企业集群架构中有哪些应用场景?
一、作为数据库的前端缓存应用
a.完整缓存(易)。静态缓存
b.执点缓存(难)
特殊说明:
二、作业集群的session会话共享存储-
3、Memcached服务特点及工作原理是什么?
4、简述Memcached内存管理机制原理?....
5.Memcached是怎么工作的?
6、Memcached最大的优势是什么?
7、Memcached和MySQL的qee-----
8、Memcached和服务器的localcache(比如PHP的APC、mmap文件等)相比,有什么优缺点?
9.Memcached的cache机制是怎样的?
10、Memcached如何实现冗余机制?
11.Memcached如何处理容错的?
12.如何将Memcached中item批量导入导出?
13.如果缓存数据在导出导入之间过期了,您又怎么处理这些数据呢?...
14、Memcached是如何做身份验证的?
15.Memcached的多线程是什么?如何使用它们?
16.Memcached能接受的key的最大长度是多少?
17.Memcached最大能存储多大的单个item?
18、Memcached能够更有效地使用内存吗?
19.什么是二进制协议。我该