ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
初始化 ~~~ package RabbitMQ import ( "fmt" "github.com/streadway/amqp" "log" ) // url 格式 amqp://账户:秘密@rabbitmq服务器地址:端口号/host const MQURL = "amqp://guest:guest@127.0.0.1:5672/" type RabbitMQ struct { conn *amqp.Connection channel *amqp.Channel // 队列名称 QueueName string // 交换机 Exchange string // key Key string // 连接信息 Mqurl string } // 创建RabbitMQ结构体实例 func NewRabbitMQ(queueName,exchange,key string) *RabbitMQ { mq := &RabbitMQ{ QueueName: queueName, Exchange: exchange, Key: key, Mqurl: MQURL, } connection, e := amqp.Dial(mq.Mqurl) mq.failOnErr(e,"创建连接失败") channel, e := connection.Channel() mq.failOnErr(e,"获取channel失败") mq.conn = connection mq.channel = channel return mq } // 断开channel和connection func (r *RabbitMQ) Destroy() { r.channel.Close() r.conn.Close() } // 错误处理函数 func (r *RabbitMQ) failOnErr (err error,message string) { if err != nil { log.Fatal("%s:%s",message,err) panic(fmt.Sprintf("%s:%s",message,err)) } } ~~~