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

使用Python向RabbitMQ发送JSON数据只需要一个send_json方法

发送JSON数据

通过调用rabbitmq.send_json(channel, user, queue=result)能够更简单的实现发送JSON数据。

生产者

import json
import rabbitmq# 建立连接
connection = rabbitmq.get_connection()# 创建管道
channel = connection.channel()# 创建队列
queue_name = "user_manager"
result = channel.queue_declare(queue=queue_name)# 向队列中写入数据
data = [{"id": 1, "name": "张三", "age": 23},{"id": 2, "name": "李四", "age": 24},{"id": 3, "name": "王五", "age": 35},
]
for user in data:rabbitmq.send_json(channel, user, queue=result)# 关闭连接
connection.close()

消费者

import json
import rabbitmq# 创建连接
connection = rabbitmq.get_connection()# 创建管道
channel = connection.channel()# 创建队列
queue_name = "user_manager"
channel.queue_declare(queue=queue_name, durable=False)def callback(ch, method, properties, body):# 解析队列中的每一条数据ch.basic_ack(delivery_tag=method.delivery_tag)data = body.decode("utf8")print(json.loads(data))# 告诉rabbitmq,用callback来接收消息
channel.basic_consume(queue_name, callback)# 开始接收信息,并进入阻塞状态,队列里有信息才会调用callback进行处理
try:channel.start_consuming()
finally:connection.close()

相关文章:

使用Python向RabbitMQ发送JSON数据只需要一个send_json方法

发送JSON数据 通过调用rabbitmq.send_json(channel, user, queueresult)能够更简单的实现发送JSON数据。 生产者 import json import rabbitmq# 建立连接 connection rabbitmq.get_connection()# 创建管道 channel connection.channel()# 创建队列 queue_name "user…...

Gitlab Gitee GitHub 远程仓库显示图片

大家好我是苏麟 , 今天出一期开发之外的如何在远程仓库展示图片 . 以GitLab为例 1.首先我们要把一张图片上传到远程仓库 . 2.第二步,点击图片 3.鼠标右键点击下载左键点击复制连接 4.找到我们要上传的md文件 , 把连接复制到 ( ) 里 , 这样上传md之后就可以看到图片了 . 这期就到…...

JS常用的几种事件

JavaScript常用的几种事件有: 点击事件:当用户点击某个元素时触发,常用于按钮、链接等交互元素。事件名称为"click"。 javascriptbutton.addEventListener(click, function() { alert(按钮被点击了!); }); 鼠标移动事…...

代码随想录算法训练营第一天| 27 移除元素 704 二分查找

目录 27 移除元素 704 二分查找 27 移除元素 快指针遍历&#xff0c;慢指针记录 class Solution { public:int removeElement(vector<int>& nums, int val) {int l 0,r 0;for(;r < nums.size();r){if(nums[r] val){}else{nums[l] nums[r];}}return l;} }; …...

深度生成模型(Deep Generative Models)

什么是机器学习 深度生成模型&#xff08;Deep Generative Models&#xff09;是一类利用深度学习方法生成新样本的模型。这些模型通常被用于生成与训练数据集相似的新数据&#xff0c;例如图像、文本或音频。深度生成模型的两个主要类型是生成对抗网络&#xff08;GANs&#…...

C++(20):vector通过erase,erase_if删除符合条件的元素

C++20前,vector可以通过成员函数erase删除迭代器指定的元素,并返回被删除的下一个元素: iterator erase( iterator pos ); iterator erase( iterator first, iterator last ); 1.删除单个元素 #include <vector> #include <iostream> #include <algorithm&…...

树莓派ubuntu:新增用户

切换到Root用户 sudo -i创建新用户 useradd -m 新用户名设置密码 passwd 新用户名将新用户加入sudo用户组 adduser newname sudo拷贝数据 cp -R /home/旧用户名/* /home/新用户名/查看用户所属组 id 新用户名更改文件所属 sudo chown 新用户名:group /home/新用户名/*gr…...

C //练习 5-14 修改排序程序,使它能处理-r标记。该标记表明,以逆序(递减)方式排序。要保证-r和-n能够组合在一起使用。

C程序设计语言 &#xff08;第二版&#xff09; 练习 5-14 练习 5-14 修改排序程序&#xff0c;使它能处理-r标记。该标记表明&#xff0c;以逆序&#xff08;递减&#xff09;方式排序。要保证-r和-n能够组合在一起使用。 注意&#xff1a;代码在win32控制台运行&#xff0c…...

CAN总线报文格式———标准数据帧

标准数据帧 : 用于节点向外传送数据 标准数据帧由帧起始、仲裁段、控制段、数据段、CRC段、ACK段、帧结束等组成。 一、总线空闲&#xff08;Bus Idle&#xff09; CAN总线空闲时&#xff0c;总线上会输出持续的高电平“1”。当总线空闲时任何连接的单元都可以开始发送新的报…...

DFT中的SCAN、BIST、ATPG基本概念

DFT中的SCAN、BIST、ATPG基本概念 SCAN 定义 扫描路径法是一种针对时序电路芯片的DFT方案&#xff0c;目标是在不影响正常功能的情况下来能够提高可控性和可观测性。 原理 原理是将时序电路可以模型化为一个组合电路网络和带触发器(Flip-Flop&#xff0c;简称FF)的时序电路…...

掌握 Vue 响应式系统,让数据驱动视图(下)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…...

apache、nginx、php 隐藏版本号

apache、nginx、php 隐藏版本号 针对的系统都是CentOS 1、没配置之前 1.1 Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.2.24 mod_wsgi/3.4 Python/2.7.5 1.2 Server: nginx/1.16.0 1.3 X-Powered-By&#xff1a;7.2.24 2、配置信息 不知道具体位置&#xff0c;可…...

sqoop的安装与使用

Sqoop是一个用于在hadoop与mysql之间传输数据的工具 Sqoop 环境搭建 (1)上传安装包:sqoop-1.4.6-cdh5.14.2.tar.gz到/opt/software (2)解压安装包:tar -zxf sqoop-1.4.6-cdh5.14.2.tar.gz -C /opt/install/ (3)创建软连接:ln -s /opt/install/sqoop-1.4.6-cdh5.14.2/ /opt/ins…...

【docker】Docker Stack 详细使用及注意事项

一、什么是 Docker Stack Docker Stack 是 Docker Swarm 环境中用于管理一组相关服务的工具。它使得在 Swarm 集群中部署、管理和扩展一组相互关联的服务变得简单。主要用于定义和编排容器化应用的多个服务。以下是 Docker Stack 的一些关键特点&#xff1a; 服务集合&#xf…...

Android开发基础(四)

Android开发基础&#xff08;四&#xff09; 本篇将从Android数据存储方式去理解Android开发。 Android数据存储方式 Android提供了多种数据存储方式。 一、SharedPreferences存储 主要用于存储一些简单的配置信息&#xff0c;如登录账号密码等&#xff1b; 这种存储方式采…...

HTML5+CSS3+JS小实例:音频可视化

实例:音频可视化 技术栈:HTML+CSS+JS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><m…...

【写作】短篇《相遇与相守》

文章目录 前言背景角色故事梗概 第一章 缘分的邂逅第二章 心动的瞬间第三章 甜蜜的日子第四章 误会与和解第五章 共度风雨 前言 背景 时代背景 现代&#xff0c;一个充满忙碌和喧嚣的都市。这个都市是许多年轻人追求梦想和奋斗的地方&#xff0c;但也是许多人渴望寻找真挚感情…...

2024年最新软件测试面试题

Part1 1、你的测试职业发展是什么&#xff1f;【文末有面试文档免费领取】 测试经验越多&#xff0c;测试能力越高。所以我的职业发展是需要时间积累的&#xff0c;一步步向着高级测试工程师奔去。而且我也有初步的职业规划&#xff0c;前3年积累测试经验&#xff0c;按如何做…...

instanceof、对象类型转化、static关键字

instanceof 与 对象类型转换 instanceof是判断一个对象是否与一个类有关系的关键字 先看引用类型&#xff0c;再看实际类型 *例子&#xff1a;obj instanceof A 先看obj的类型是否与A有关联&#xff0c;无关联则报错&#xff0c;有关联则判断obj的实际类型 因为obj的实际类…...

学习笔记-python文件基本操作

1.文件的基本操作 open()打开函数 语法 : open(name,mode) name&#xff1a;是要打开的目标文件名的字符串(可以包含文件所在的具体路径)。 mode&#xff1a;设置打开文件的模式(访问模式)&#xff1a;只读、写入、追加等。 # 打开文件open(): 如果报FileNotFoundError,文件路…...

ROS Noetic下用Python脚本在Gazebo里动态生成障碍物(附完整代码和常见报错解决)

ROS Noetic下Python脚本动态生成Gazebo障碍物的工程实践 在机器人仿真测试中&#xff0c;动态生成环境障碍物是验证导航算法鲁棒性的关键手段。传统手动拖拽方式效率低下且难以复现特定测试场景&#xff0c;而通过编程控制Gazebo仿真环境则能实现测试流程的自动化与标准化。本文…...

静息态fMRI分析避坑指南:DPARSFA预处理中那些容易踩的‘雷’(附解决方案)

静息态fMRI分析实战避坑手册&#xff1a;DPARSFA预处理中的7个致命陷阱与修复方案 当你熬夜跑完DPARSFA预处理流程&#xff0c;满心期待地点开结果图时——突然发现ReHo图像像被泼了墨水&#xff0c;fALFF数值全部溢出&#xff0c;或是软件弹出一串看不懂的报错代码。这种崩溃…...

Kandinsky-5.0-I2V-Lite-5s实战案例:用会议合影生成带入场动画的团队介绍视频

Kandinsky-5.0-I2V-Lite-5s实战案例&#xff1a;用会议合影生成带入场动画的团队介绍视频 1. 项目背景与价值 想象一下这个场景&#xff1a;公司刚开完年度战略会议&#xff0c;团队拍了一张大合影。现在需要制作一个团队介绍视频&#xff0c;传统方式需要找专业剪辑师&#…...

高效智能转换方案:B站缓存视频一键处理实战指南

高效智能转换方案&#xff1a;B站缓存视频一键处理实战指南 【免费下载链接】m4s-converter 一个跨平台小工具&#xff0c;将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 在B站视频频繁下架的当下&#xff0c…...

Guohua Diffusion 创意编程:用Processing可视化交互控制图像生成

Guohua Diffusion 创意编程&#xff1a;用Processing可视化交互控制图像生成 你有没有想过&#xff0c;自己随手画的一条线、选择的一个颜色&#xff0c;能立刻变成一幅由AI生成的完整画作&#xff1f;这听起来像是科幻电影里的场景&#xff0c;但现在&#xff0c;通过一点创意…...

M1 Mac 8GB内存跑不动7B模型?手把手教你用1.5B版DeepSeek+RAGFlow搭建个人知识库

M1 Mac 8GB内存跑不动7B模型&#xff1f;手把手教你用1.5B版DeepSeekRAGFlow搭建个人知识库 当M1 Mac用户尝试在本地部署大语言模型时&#xff0c;8GB内存往往成为难以逾越的障碍。特别是运行7B参数模型时&#xff0c;内存不足导致的崩溃和卡顿让许多开发者望而却步。本文将分…...

整理‌ 主流国产AI龙虾的核心能力对比表(支持平台/部署方式/适用场景)腾讯WorkBuddy‌ ‌阿里JVS Claw 百度DuMate

根据当前的资料&#xff0c;腾讯WorkBuddy和百度的DuMate当前有一定一定量的免费额度&#xff0c;大家可以用起来&#xff01; 主流国产AI龙虾的核心能力对比表 五款主流国产AI龙虾的核心能力对比表已整理完成&#xff0c;涵盖支持平台、部署方式与适用场景三大维度&#xff…...

OLED多级菜单移植与设计实战

1. 低成本嵌入式项目的OLED多级菜单设计 第一次接触OLED多级菜单是在一个智能温控器的DIY项目里。当时为了给设备做个简单的交互界面&#xff0c;我试过各种方案&#xff0c;最后发现0.96寸的OLED屏配上多级菜单是最经济实惠的选择。这种组合特别适合预算有限但又需要基本人机交…...

告别软件盗版烦恼:用YT88加密狗5分钟搞定C#/Java/Python源代码加密(附完整开发包下载)

5分钟实现多语言源代码加密&#xff1a;YT88加密狗实战指南 独立开发者最头疼的问题之一&#xff0c;就是辛苦编写的代码被轻易反编译或盗用。上周我的一个朋友就遇到了这种情况——他花了三个月开发的Python数据分析工具&#xff0c;刚上线两周就被破解并免费传播。这种经历在…...

Java泛型中的List

本文将详细回答java泛型中的listt extends base>使用问题。 在java中&#xff0c;泛型提供了强大的类型安全机制&#xff0c;但其一些特点也容易引起混淆&#xff0c;如listt extends base>开发者经常感到困难。假设sub是base的子类&#xff1a;public class base { }pub…...