过期订单消费端:
package main
import (
"log"
"github.com/streadway/amqp"
)
func failOnError(err error, msg string) {
if err != nil {
log.Fatalf("%s: %s", msg, err)
}
}
func main() {
orderExchange:="order_exchange"//订单交换机
orderQueue := "order_queue"//订单队列,消息发送到这个队列,但没有消费者消费这个队列的消息
orderRoutingKey := "order"//订单路由key
deadExchange:="dead_exchange"//死信交换机
deadQueue := "dead_queue"//死信队列
// 建立链接
conn, err := amqp.Dial("amqp://guest:guest@localhost:5672/")
failOnError(err, "Failed to connect to RabbitMQ")
defer conn.Close()
ch, err := conn.Channel()
failOnError(err, "Failed to open a channel")
defer ch.Close()
// 声明订单交换机
err = ch.ExchangeDeclare(
orderExchange, // name
"direct", // type
true, // durable
false, // auto-deleted
false, // internal
false, /