db.go 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. /*
  2. 初始数据库应用
  3. */
  4. package init
  5. import (
  6. "bp.jydev.jianyu360.cn/BaseService/jyMicroservices/jyBXCore/entity"
  7. "log"
  8. "strings"
  9. . "app.yhyue.com/moapp/jybase/es"
  10. "app.yhyue.com/moapp/jybase/mongodb"
  11. "app.yhyue.com/moapp/jybase/mysql"
  12. "app.yhyue.com/moapp/jybase/redis"
  13. )
  14. var (
  15. MainMysql *mysql.Mysql
  16. BaseMysql *mysql.Mysql
  17. BiMysql *mysql.Mysql
  18. Mgo mongodb.MongodbSim
  19. MgoBidding mongodb.MongodbSim //标讯详情等(第一版没用)
  20. NoLoginEs Es
  21. FreeEs Es
  22. )
  23. func MongoDBInit(em *entity.Mongo) {
  24. //初始化 mongodb
  25. if em.Main.Address != "" {
  26. log.Println("--初始化 mongodb--")
  27. Mgo = mongodb.MongodbSim{
  28. MongodbAddr: em.Main.Address,
  29. Size: em.Main.Size,
  30. DbName: em.Main.DbName,
  31. }
  32. Mgo.InitPool()
  33. }
  34. //
  35. if em.Bidding.Address != "" {
  36. log.Println("--初始化 mongodb bidding--")
  37. MgoBidding = mongodb.MongodbSim{
  38. MongodbAddr: em.Bidding.Address,
  39. Size: em.Bidding.Size,
  40. DbName: em.Bidding.DbName,
  41. UserName: em.Bidding.UserName,
  42. Password: em.Bidding.Password,
  43. }
  44. MgoBidding.InitPool()
  45. }
  46. }
  47. func MysqlInit(mm *entity.Mysql) {
  48. //初始化 mysql-main
  49. if mm.Main.Address != "" {
  50. log.Println("--初始化 mysql--")
  51. MainMysql = &mysql.Mysql{
  52. Address: mm.Main.Address,
  53. UserName: mm.Main.UserName,
  54. PassWord: mm.Main.Password,
  55. DBName: mm.Main.DbName,
  56. MaxOpenConns: mm.Main.MaxOpenConns,
  57. MaxIdleConns: mm.Main.MaxIdleConns,
  58. }
  59. MainMysql.Init()
  60. }
  61. if mm.BiService.Address != "" {
  62. log.Println("--初始化 mysql--")
  63. BiMysql = &mysql.Mysql{
  64. Address: mm.BiService.Address,
  65. UserName: mm.BiService.UserName,
  66. PassWord: mm.BiService.Password,
  67. DBName: mm.BiService.DbName,
  68. MaxOpenConns: mm.BiService.MaxOpenConns,
  69. MaxIdleConns: mm.BiService.MaxIdleConns,
  70. }
  71. BiMysql.Init()
  72. }
  73. //初始化 mysql-base
  74. if mm.Base.Address != "" {
  75. log.Println("--初始化 tidb--")
  76. BaseMysql = &mysql.Mysql{
  77. Address: mm.Base.Address,
  78. UserName: mm.Base.UserName,
  79. PassWord: mm.Base.Password,
  80. DBName: mm.Base.DbName,
  81. MaxOpenConns: mm.Base.MaxOpenConns,
  82. MaxIdleConns: mm.Base.MaxIdleConns,
  83. }
  84. BaseMysql.Init()
  85. }
  86. }
  87. func RedisInit(rm *entity.RedisStuct) {
  88. //初始化 redis
  89. if len(rm.Addr) > 0 {
  90. log.Println("--初始化 redis--")
  91. redis.InitRedisBySize(strings.Join(rm.Addr, ","), 100, 30, 300)
  92. }
  93. }
  94. func EsInit(es *entity.EsStruct) {
  95. //初始化 elasticsearch
  96. if es.Addr != "" {
  97. log.Println("--初始化 elasticsearch--")
  98. NewEs(es.Version, es.Addr, es.Size, es.UserName, es.Password)
  99. }
  100. }
  101. func NoLoginEsInit(es *entity.EsStruct) {
  102. if es.Addr != "" {
  103. log.Println("--初始化 nologin elasticsearch--")
  104. NoLoginEs = &EsV7{
  105. Address: es.Addr,
  106. Size: es.Size,
  107. UserName: es.UserName,
  108. Password: es.Password,
  109. }
  110. NoLoginEs.Init()
  111. }
  112. }
  113. func EsFreeInit(es *entity.EsStruct) {
  114. if es.Addr != "" {
  115. log.Println("--初始化 FreeEs elasticsearch--")
  116. FreeEs = &EsV7{
  117. Address: es.Addr,
  118. Size: es.Size,
  119. UserName: es.UserName,
  120. Password: es.Password,
  121. }
  122. FreeEs.Init()
  123. }
  124. }