2019-08-12

消息队列(Message Queue,简称MQ)

从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已。

其主要用途:不同进程Process/线程Thread之间通信。

为什么会产生消息队列?有几个原因:

不同进程(process)之间传递消息时,两个进程之间耦合程度过高,改动一个进程,引发必须修改另一个进程,为了隔离这两个进程,在两进程间抽离出一层(一个模块),所有两进程之间传递的消息,都必须通过消息队列来传递,单独修改某一个进程,不会影响另一个;

不同进程(process)之间传递消息时,为了实现标准化,将消息的格式规范化了,并且,某一个进程接受的消息太多,一下子无法处理完,并且也有先后顺序,必须对收到的消息进行排队,因此诞生了事实上的消息队列

RabbitMQ

RabbitMQ是一套开源(MPL)的消息队列服务软件,是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能、健壮以及可伸缩性出名的 Erlang 写成。


hibernate里对象有三种状态:

1,Transient 瞬时 :对象刚new出来,还没设id,设了其他值。

2,Persistent 持久:调用了save()、saveOrUpdate(),就变成Persistent,有id

3,Detached  脱管 : 当session  close()完之后,变成Detached。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服...
    赵昱_dd5c阅读 140评论 0 0
  • 今天让我们走进RabbitMQ的世界: RabbitMQ的背景是一个由erlang开发的AMQP(Advanced...
    霹雳火_4617阅读 235评论 0 0
  • RabbitMQ基础知识 一、背景 RabbitMQ是一个由erlang开发的AMQP(Advanced M...
    冰阔乐_b0a4阅读 164评论 0 0
  • 环境: ubuntu 16.04 官网的安装向导请点击这里 rabbitmq依赖erlang 首先检查你的erl...
    justonlyyo阅读 791评论 0 0
  • 随着开学孩子也跟着慢慢的进入了状态,虽说写作业不是很积极,但至少不会要求再看电视,继续寒假前的约定,周一至周...
    侯耀斐妈妈阅读 314评论 0 2

友情链接更多精彩内容