nats.go 827 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package bus
  2. import (
  3. "config-server/conf"
  4. "config-server/service"
  5. "infish.cn/comm"
  6. )
  7. var NatsCenter *comm.NatsBus
  8. func NewNatsBus(app *conf.AppConf) (*comm.NatsBus, map[string]*comm.NatsBus) {
  9. // 适配器总线连接
  10. replyers := []*comm.NatsMsgReplyer{}
  11. replyers = append(replyers, service.NewConfigReplyer(app), service.NetDevConfigReplyer(app))
  12. localBus, _ := comm.NewNatsBus3(app.Nats.Url, app.Nats.MaxReconnect, app.Nats.ReconnDelaySecond,
  13. []*comm.NatsStreamWather{
  14. // NewTestStream(),
  15. },
  16. replyers...,
  17. )
  18. proxies := service.RegisterProxyBus(app)
  19. proxyReplyers, err := comm.CreateBusProxyReplyers(proxies, localBus)
  20. if err != nil {
  21. panic(err)
  22. }
  23. localBus.AddReplyers(proxyReplyers...)
  24. NatsCenter = localBus
  25. if localBus == nil {
  26. panic("create bus error")
  27. }
  28. return NatsCenter, proxies
  29. }