rabbitmq
comprel
这个作者很懒,什么都没留下…
展开
-
rabbitmq管理
rabbitmq 工具rabbitmqctl (命令行)rabbitmq_management (图形化)abbitmqctl工具是用来管理RabbitMQ中间件的命令行工具,它通过连接各个RabbitMQ节点来执行所有操作。如果有节点没有运行,将会显示诊断信息、不能到达,或因不匹配的Erlang cookie(有关Erlang cookie的细节可以参考7.1章节)而拒绝连接。...原创 2019-07-01 22:53:56 · 557 阅读 · 0 评论 -
pika详解(五)登录认证及connectionParameters
pika登录认证使用Pika进行身份验证,需要创建一个PlainCredentials 传递用户名和密码的对象,并将其作为凭证参数值传递给ConnectionParametersclass pika.credentials.PlainCredentials(username, password,erase_on_connect =False)erase_on_connect 在连接后清除...原创 2019-07-04 22:42:09 · 9849 阅读 · 1 评论 -
pika详解(四) channel 通道
channel通道通道是在connection建立后进行创建分配的,有利于connection重用官方建议通过connection的channel() 方法进行创建方法/参数:add_callback(callback, replies, one_shot=True)从 RabbitMQ broker 收到消息,在回复列表中,则调用回调函数,为replies列表添加回调函数参数...原创 2019-07-04 22:35:22 · 4473 阅读 · 1 评论 -
pika详解(三)SelectConnection及其他Connection
SelectConnection定义如下:class SelectConnection(BaseConnection): def __init__( self, # pylint: disable=R0913 parameters=None, on_open_callback=None, ...原创 2019-07-04 22:20:33 · 3253 阅读 · 0 评论 -
pika详解(二) BlockingConnection
BlockingConnectionBlockingConnection提供了最通用的连接方式提供两个类: BlockingConnection 和 BlockingChannelclass BlockingConnection(object): def __init__(self, parameters=None, _impl_class=None): ...Blocking...原创 2019-07-04 00:10:01 · 7667 阅读 · 0 评论 -
pika详解 (一)
pikapika处理消息可以简单分为以下几个步骤:我们首先创建连接对象,然后启动事件循环。当有连接时,调用on_connected方法。在该方法中创建channelchannel创建完成,将调用on_channel_open方法。在该方法中,声明了一个queue。queue声明成功后,将调用on_queue_declared。在该方法中,调用channel.basic_consume,...原创 2019-07-03 23:57:14 · 3636 阅读 · 1 评论 -
rabbitmq集群搭建
rabbitmq集群集群优点:避免单节点故障, 提高服务可用性提高服务性能,单机吞吐量有限,集群可以扩展节点,将流量分摊到集群中各个节点,提升rabbitmq吞吐量rabbitmq集群,在失去一个节点时, 客户端能够重新连接到集群中的其他节点并继续生产或者消费, 提高可用性, 但是集群也不能保证消息不被丢失。有一点需要注意的是,rabbitmq集群中的节点间的数据其实是不共享的, 因...原创 2019-06-24 23:42:15 · 552 阅读 · 0 评论 -
rabbitmq 延迟队列
延迟队列延迟队列的实现其实是通过前面提到的消息TTL机制以及死信队列进行实现的具体可以参考之前的 rabbitmq TTL及死信队列,优先级队列如果用户在 消息发送后,想延迟一段时间才执行相关的任务,可以使用延迟队列0及消息延迟一段时间才能被消费者消费, 延时处理该功能可以实现延迟执行, 也可以模拟为定时任务进行执行例如:用户需要指令在指定时间执行,则可以使用延迟队列,到指定的...原创 2019-06-26 22:51:37 · 219 阅读 · 0 评论 -
rabbitmq TTL及死信队列,优先级队列
一. TTL 过期时间消息TTLttl与网络包跳数超时原理一致, 消息在队列中生存的时间超过ttl,就会成为"死信" 消费者无法再接收处理该消息, 除非放入死信队列等进行转移处理ttl设置方法:设置队列属性, 那么队列中所有的消息都有相同的超时时间设置方法为在queue declare声明定义的世行加入x-message-ttl进行设置 , 单位是毫秒消息本身进行设置, ...原创 2019-06-26 22:43:49 · 821 阅读 · 0 评论 -
rabbitmq消息处理方式及备份交换机
一. rabbitmq对于没有匹配到的消息的处理方式:mandatorymandatory为true时, 交换机无法根据自身的类型和路由键等条件依据规则找到一个符合条件队列, 那么rabbitmq会调用basic.return 命令将消息返回给生产者。 如果为false, 则将消息直接丢弃immediate立即, 实时, 该参数为true时, 若rabbitmq路由消息的时候,发现...原创 2019-06-26 22:40:46 · 1320 阅读 · 0 评论 -
rabbitmq参数配置
rabbittmq配置修改:环境变量设置 如: 节点名称,rabbitmq配置文件地址, 节点内部通讯端口等配置文件 如: 端口, ip, 网络,内存等运行时参数和策略 在运行时设置rabbitmqctl environment输出当前节点上正在运行的rabbitmq、plugins和libraries已应用的有效配置环境变量配置都是使用RABBITMQ_ 开头, 例如:...翻译 2019-06-26 22:35:46 · 3288 阅读 · 0 评论 -
python使用pika操作rabbitmq总结(一)
python 连接操作rabbitMQ 主要是使用pika库安装:pip install pika==1.0.1注意: pika 1.x 与 pika 0.x 有一些不同,使用的时候需要看清版本使用,避免踩坑Pika是用于Python的RabbitMQ(AMQP 0-9-1)客户端库注: 官方对于pika有如下介绍:Since threads aren’t appropriate t...原创 2019-06-26 22:29:02 · 32106 阅读 · 6 评论 -
rabbitmq简介及安装
RabbitMQ是目前主流的几个消息中间件之一, 了解RabbitMQ对于开发人员来说也很有必要什么是消息队列,消息队列能干什么?消息队列中间件是利用消息传递机制将消息在不同接口,不同平台之间传递,提供消息传递和消息排队消息队列能够实现消息通信,二能够通过异步的方式实现调用的解耦,较少IO阻塞消息队列一般有两种传递模式:点对点传递P2P发布订阅模式 pub/sub消息队列的存在使...原创 2019-06-23 22:02:29 · 203 阅读 · 0 评论 -
python使用pika操作rabbitmq编程入门(二)
pika生产者程序大致步骤:1. 建立连接connection , 需要认证的调用认证参数2. 创建通道channel 当然 channel可以池化,这样可以重复使用3. 声明队列 指定队列属性, 一旦指定属性不能修改, 例如是否持久化,名称4. 声明交换机 交换机类型,名称等, 也可以不用声明,直接使用 “” 空字符串,默认交换机也可以5. 将队列与交换机绑定 queue_...原创 2019-07-01 23:00:15 · 4241 阅读 · 1 评论 -
rabbitmq ssl/tls及pika tls认证连接方法
rabbitmq开启ssl:# Enable AMQPSlisteners.ssl.default = 5671ssl_options.cacertfile = PIKA_DIR/testdata/certs/ca_certificate.pemssl_options.certfile = PIKA_DIR/testdata/certs/server_certificate.pemssl...原创 2019-07-04 22:46:02 · 3895 阅读 · 1 评论