当前位置: 首页 > news >正文

网站开发月薪多少钱建设网站的优势

网站开发月薪多少钱,建设网站的优势,中介,南昌网站建设技术托管1. RabbitMQ 中的 broker 是指什么?cluster 又是指什么? 2. 什么是元数据?元数据分为哪些类型?包括哪些内容?与 cluster 相关的元数据有哪些?元数据是如何保存的?元数据在 cluster 中是如何分布…

1. RabbitMQ 中的 broker 是指什么?cluster 又是指什么?

2. 什么是元数据?元数据分为哪些类型?包括哪些内容?与 cluster 相关的元数据有哪些?元数据是如何保存的?元数据在 cluster 中是如何分布的?

3. RAM node 和 disk node 的区别?

4. RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?

5. RabbitMQ 概念里的 channel、exchange 和 queue 这些东东是逻辑概念,还是对应着进程实体?这些东东分别起什么作用?

6. vhost 是什么?起什么作用?

7. 在单 node 系统和多 node 构成的 cluster 系统中声明 queue、exchange ,以及进行 binding 会有什么不同?

8. 客户端连接到 cluster 中的任意 node 上是否都能正常工作?

9. 若 cluster 中拥有某个 queue 的 owner node 失效了,且该 queue 被声明具有durable 属性,是否能够成功从其他 node 上重新声明该 queue ?

10. cluster 中 node 的失效会对 consumer 产生什么影响?若是在 cluster 中创建了mirrored queue ,这时 node 失效会对 consumer 产生什么影响?

11. 能够在地理上分开的不同数据中心使用 RabbitMQ cluster 么?

12. 为什么 heavy RPC 的使用场景下不建议采用 disk node ?

13. 向不存在的 exchange 发 publish 消息会发生什么?向不存在的 queue 执行consume 动作会发生什么?

14. routing_key 和 binding_key 的最大长度是多少?

15. RabbitMQ 允许发送的 message 最大可达多大?

16. 什么情况下 producer 不主动创建 queue 是安全的?

17. “dead letter”queue 的用途?

18. 为什么说保证 message  被可靠持久化的条件是 queue  和 exchange  具有durable 属性,同时 message 具有 persistent 属性才行?

19. 什么情况下会出现 blackholed 问题?

20. 如何防止出现 blackholed 问题?

21. Consumer Cancellation Notification 机制用于什么场景?

22. Basic.Reject 的用法是什么?

23. 为什么不应该对所有的 message 都使用持久化机制?

24. RabbitMQ 中的 cluster、mirrored queue,以及 warrens 机制分别用于解决什么问题?存在哪些问题?

       

     1.RabbitMQ 中的 broker 是指什么?cluster 又是指什么?

        答:broker 是指一个或多个 erlang node 的逻辑分组,且 node 上运行着 RabbitMQ 应用程序。cluster 是在 broker 的基础之上,增加了 node 之间共享元数据的约束。

        2.什么是元数据?元数据分为哪些类型?包括哪些内容?与 cluster 相关的元数据有哪些?元数据是如何保存的?元数据在 cluster 中是如何分布的?

        答:在非 cluster 模式下,元数据主要分为 Queue 元数据(queue 名字和属性等)、 Exchange 元数据(exchange 名字、类型和属性等)、Binding 元数据(存放路由关系的查找表)、Vhost 元数据(vhost 范围内针对前三者的名字空间约束和安全属性设置)。在 cluster 模式下,还包括 cluster 中 node 位置信息和 node 关系信息。元数据按照 erlang node 的类型确定是仅保存于 RAM 中,还是同时保存在 RAM 和 disk 上。元数据在 cluster 中是全 node 分布的。

        3.RAM node disk node 的区别?

        答:RAM node 仅将 fabric(即 queue、exchange 和 binding 等 RabbitMQ 基础构件)相关元数据保存到内存中,但 disk node 会在内存和磁盘中均进行存储。RAM node 上唯一会存储到磁盘上的元数据是 cluster 中使用的 disk node 的地址。要求在 RabbitMQ cluster中至少存在一个 disk node 。

        4.RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?

        答:可以认为是无限制,因为限制取决于机器的内存,但是消息过多会导致处理效率的下降。

        5.RabbitMQ 概念里的 channelexchange queue 这些东东是逻辑概念,还是对应着进程实体?这些东东分别起什么作用?

        答:queue 具有自己的 erlang 进程;exchange 内部实现为保存 binding 关系的查找表; channel 是实际进行路由工作的实体,即负责按照 routing_key 将 message 投递给 queue 。由 AMQP 协议描述可知,channel 是真实 TCP 连接之上的虚拟连接,所有 AMQP 命令都是通过 channel 发送的,且每一个 channel 有唯一的 ID。一个 channel 只能被单独一个操作系统线程使用,故投递到特定 channel 上的 message 是有顺序的。但一个操作系统线程上允许使用多个 channel 。channel 号为 0 的 channel 用于处理所有对于当前 connection 全局有效的帧,而 1-65535 号 channel 用于处理和特定 channel 相关的帧。AMQP 协议给出的 channel 复用模型每一个 channel 运行在一个独立的线程上,多线程共享同一个 socket。

        6.vhost 是什么?起什么作用?

        答:vhost  可以理解为虚拟 broker  ,即 mini-RabbitMQ  server。其内部均含有独立的

queue、exchange 和 binding 等,但最最重要的是,其拥有独立的权限系统,可以做到 vhost 范围的用户控制。当然,从 RabbitMQ 的全局角度,vhost 可以作为不同权限隔离的手段(一个典型的例子就是不同的应用可以跑在不同的 vhost 中)。

        7.在单 node 系统和多 node 构成的 cluster 系统中声明 queueexchange ,以及进行 binding 会有什么不同?

        答:当你在单 node 上声明 queue 时,只要该 node 上相关元数据进行了变更,你就会得到 Queue.Declare-ok 回应;而在 cluster 上声明 queue ,则要求 cluster 上的全部 node 都要进行元数据成功更新,才会得到 Queue.Declare-ok 回应。另外,若 node 类型为 RAM node 则变更的数据仅保存在内存中,若类型为 disk node 则还要变更保存在磁盘上的数据。

        8.客户端连接到 cluster 中的任意 node 上是否都能正常工作?

        答:是的。客户端感觉不到有何不同。

        9.若 cluster 中拥有某个 queue owner node 失效了,且该 queue 被声明具有durable 属性,是否能够成功从其他 node 上重新声明该 queue 

        答:不能,在这种情况下,将得到 404 NOT_FOUND 错误。只能等 queue 所属的 node恢复后才能使用该 queue 。但若该 queue 本身不具有 durable 属性,则可在其他 node上重新声明。        

        10.cluster node 的失效会对 consumer 产生什么影响?若是在 cluster 中创建了mirrored queue ,这时 node 失效会对 consumer 产生什么影响?

        答:若是 consumer 所连接的那个 node 失效(无论该 node 是否为 consumer 所订阅 queue 的 owner node),则 consumer 会在发现 TCP 连接断开时,按标准行为执行重连逻辑,并根据“Assume Nothing”原则重建相应的 fabric 即可。若是失效的 node 为 consumer 订阅 queue 的 owner node,则 consumer 只能通过 Consumer Cancellation Notification 机制来检测与该 queue 订阅关系的终止,否则会出现傻等却没有任何消息来到的问题。

>>>>>>>>更多内容及PDF版下载请访问:
RabbitMQ消息中间件面试专题http://120.46.207.124:1010/zyweb/#/source/viewPdf2?fileName=tempViewFile/RabbitMQ消息中间件面试专题.pdf

http://www.dtcms.com/a/416993.html

相关文章:

  • 开发网站网页归档建立网站的流程多少钱
  • 做外贸一般上什么网站wordpress 短链接插件
  • 成都网站维护多少钱网站建设工资多少
  • apache搭建多个网站卫生院网站建设
  • 个人怎么建立网站老站改版与新建网站
  • 百度网盟推广合作网站安徽移动互联网开发
  • 上海有名的网站建设公司学网络推广培训
  • 成交型网站制作设计品牌logo
  • 赤峰网站开发red企业管理专业就业方向
  • 有做软件的网站有哪些一个网站项目几个人做
  • 建设班级网站 沟通无限安卓手机app
  • 秀山网站建设端午节手抄报获奖wordpress要收钱吗
  • 微信公众号怎么做微网站吗国外建设网站
  • 网站seo外链如何做服装的微商城网站
  • wordpress设置站点地址网络上做广告最好怎么做
  • 还有用asp做网站的吗巴中市建设厅官方网站
  • 有做国际网站生意吗湖北网站建设营销qq
  • 做餐饮网站网站空间如何搬家
  • 网站建设管理及维护哈尔滨网站制作策划
  • 网站流量分析百度搜索网站
  • 个人旅游网站模版网站建设课设
  • 阅读论文看懂 CloudSim 框架
  • 建设网站教程视频下载wordpress文章固定格式
  • 江苏大丰做网站四川城乡建设厅官方网站
  • 做餐饮连锁加盟如何选网站推广优化建站
  • 做网站是什么鬼创意设计一个网站
  • 常州住房和城乡建设局网站wordpress5安装
  • wordpress 建站教程 .pdf搭建wordpress靶机
  • 网站商城微信支付宝支付宝支付接口工作职责怎么写
  • 嘉兴建网站外国人爱做视频网站吗