nats.go 899 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package bus
  2. import (
  3. "launcher/conf"
  4. "launcher/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), service.NewConfigSetReplyer(app), service.NewLancherQuitReplyer(app))
  12. localBus, _ := comm.NewNatsBus4("queen3d", 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. }