Golang rabbitMQ生产者和消费者怎么实现
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,今天小编给大家分享一下Golang rabbitMQ生产者和消费者怎么实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后
千家信息网最后更新 2025年11月07日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安全错误
数据库的锁怎样保障安全
爬虫软件开发
数据库数据太多慢
asp软件开发员
手机版电脑网络安全模式
顺网服务器的Id
后端与数据库先建立哪个
服务器生存视频第二期
江苏做网络安全厂家
关系数据库的标准语音
数据库技术与应用第二版答
数据库课程设计个人理财
网络安全十不准十严禁
关于建立首席网络安全官制度
英雄联盟哪些服务器
益阳软件开发测试
MDB数据库递归
服务器不要带宽可以访问吗
博兴食品软件开发报价
顺义区技术软件开发服务咨询报价
rtsp流推送服务器
软件开发费一般纳税人税率
数据库锁是什么意思
格鲁吉亚大学网络安全
对峙2怎么显示无法连接服务器
北京市昌平区最新企业数据库
家庭教育与网络安全的回放
软件开发技术精品课程
平凡的世界读者数据库
福州社交软件开发
中指数据库 武汉地产