db.go 2.6 KB

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