Golang rabbitMQ生产者和消费者怎么实现
发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,今天小编给大家分享一下Golang rabbitMQ生产者和消费者怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后
千家信息网最后更新 2025年02月22日Golang rabbitMQ生产者和消费者怎么实现
今天小编给大家分享一下Golang rabbitMQ生产者和消费者怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
消费者
package mainimport ( "fmt" "github.com/streadway/amqp")func failOnError(err error, msg string) { if err != nil { fmt.Println("%s: %s", msg, err) }}// 只能在安装 rabbitmq 的服务器上操作func main() { conn, err := amqp.Dial("amqp://mquser:123456@127.0.0.1/toutiao") failOnError(err, "Failed to connect to RabbitMQ") defer conn.Close() ch, err := conn.Channel() failOnError(err, "Failed to open a channel") defer ch.Close() q, err := ch.QueueDeclare( "toutiao.web.test", // 队列名字 false, // durable false, // delete when unused false, // exclusive false, // no-wait nil, // arguments ) failOnError(err, "Failed to declare a queue") msgs, err := ch.Consume( q.Name, // queue "toutiao", // consumer true, // auto-ack,true消费了就消失 false, // exclusive false, // no-local false, // no-wait nil, // args ) failOnError(err, "Failed to register a consumer") forever := make(chan bool) go func() { for d := range msgs { fmt.Println(fmt.Sprintf("返回的消息:%s",d.Body)) } }() fmt.Println("[*] Waiting for messages. To exit press CTRL+C") <-forever}
生产者
body:消息体
package mainimport ( "github.com/streadway/amqp" "log")func failOnError(err error, msg string) { if err != nil { log.Fatalf("%s: %s", msg, err) }}// 只能在安装 rabbitmq 的服务器上操作func main() { conn, err := amqp.Dial("amqp://mquser:123456@127.0.0.1/toutiao") failOnError(err, "Failed to connect to RabbitMQ") defer conn.Close() ch, err := conn.Channel() failOnError(err, "Failed to open a channel") defer ch.Close() q, err := ch.QueueDeclare( "toutiao.web.test", // name false, // durable false, // delete when unused false, // exclusive false, // no-wait nil, // arguments) failOnError(err, "Failed to declare a queue") body := "Hello World!" //发送的消息 err = ch.Publish( "", // exchange q.Name, // routing key false, // mandatory false, // immediate amqp.Publishing{ ContentType: "text/plain", Body: []byte(body), }) log.Printf(" [x] Sent %s", body) failOnError(err, "Failed to publish a message")}
以上就是"Golang rabbitMQ生产者和消费者怎么实现"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
消费
知识
篇文章
消费者
生产者
生产
消息
内容
服务器
服务
不同
很大
名字
大部分
就是
更多
知识点
行业
资讯
资讯频道
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
洛阳友天软件开发
excel 锁定某列数据库
软件开发技术考二建
宝安互联网科技岛
如何破解服务器密码
河南省播梦网络技术有限公司
电大 计算机网络技术
蓝思科技属于工业互联网吗
侠客风云传找不到之前的服务器
支撑软件开发指哪些
手机总出现连接服务器失败
银行关于网络安全分析
深圳万能网络技术有限公司
服务器属于几级电子产品
黎明杀机连接不到服务器怎么回事
软件开发工程师人工费
服务器的WWN
医药研发专利数据库
数据库大作业毕业生招聘网站
微信发出去收不到服务器
手机版我的世界1.17服务器
多店电商软件开发
区块链比传统网络安全
惠普服务器管理口设置
数据库淮海工学院
linux服务器拷贝文件
杭州杰拉网络技术有限公司
数据库创建一张学生表
少年儿童网络安全事件
db2 数据库连接工具