-
Notifications
You must be signed in to change notification settings - Fork 6
/
main.go
41 lines (35 loc) · 1.08 KB
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package main
import (
"go-rabbit/rabbit"
)
/*
支持断线重连
失败重发
使用时最好读下代码,基本需要支持的已全支持,也可以自己添加
@author : Bill
*/
func main() {
var (
addr = "amqp://guest:guest@localhost:5672/"
queue = "testQueue"
exchange = "test_exchange"
routerKey = "/test"
msg = "123123!"
//delay
delayQueue = "delay_queue"
delayExchange = "delay_exchange"
delayRouterKey = "delay_exchange"
prefix = "v1_prefix"
sep = "_"
eType = "F"
_ttl = 60 * 1000
)
var rabbitProduct1 = rabbit.NewRabbitProduct(addr, _ttl, prefix, sep, delayExchange, delayQueue, delayRouterKey)
//注册回收
go rabbitProduct1.InitDefdelay(false)
go rabbitProduct1.InitDefdelay(true)
go rabbitProduct1.RegisterDelayWithPreFix("delay_queue", "delay_exchange", "delay_exchange")
// ttl 为 设置死信回收时间 >0 则回收
rabbitProduct1.PubMessage(true, eType, queue, exchange, routerKey, msg, rabbitProduct1.GetBool(1), rabbitProduct1.GetBool(0), _ttl)
rabbitProduct1.QueueSimple(queue, msg, true, false)
}