feat: import services and standardize Go 1.26.5
This commit is contained in:
32
apps/ec/delivery/internal/impl/cache.go
Normal file
32
apps/ec/delivery/internal/impl/cache.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package impl
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"git.apinb.com/bsm-sdk/engine/cache/mem"
|
||||
"git.apinb.com/bsm-sdk/engine/cache/redis"
|
||||
"git.apinb.com/bsm-sdk/engine/print"
|
||||
"git.apinb.com/bsm-sdk/engine/vars"
|
||||
"github.com/FishGoddess/cachego"
|
||||
)
|
||||
|
||||
var (
|
||||
MemCache *cachego.Cache
|
||||
RedisCache *redis.RedisClient
|
||||
)
|
||||
|
||||
func withMemCache() {
|
||||
m := mem.New()
|
||||
MemCache = &m
|
||||
}
|
||||
|
||||
func withRedisCache() {
|
||||
if Configure.Cache != "" {
|
||||
addrs := strings.Split(Configure.ListenOn, ":")
|
||||
port, _ := strconv.Atoi(addrs[1])
|
||||
RedisCache = redis.New(Configure.Cache, port)
|
||||
|
||||
print.Info("[Blocks Service] %s Cache: %s, DB Index: %d", vars.ServiceKey, Configure.Cache, RedisCache.DB)
|
||||
}
|
||||
}
|
||||
29
apps/ec/delivery/internal/impl/impl.go
Normal file
29
apps/ec/delivery/internal/impl/impl.go
Normal file
@@ -0,0 +1,29 @@
|
||||
package impl
|
||||
|
||||
import (
|
||||
"git.apinb.com/bsm-service-ec/delivery/internal/config"
|
||||
|
||||
"git.apinb.com/bsm-sdk/engine/service"
|
||||
)
|
||||
|
||||
var (
|
||||
Configure config.Config
|
||||
)
|
||||
|
||||
func NewService(srvKey string) {
|
||||
// register service
|
||||
service.Register(srvKey, &Configure)
|
||||
service.RegisterAnonymous(&Configure.RpcServerConf, &Configure.Anonymous)
|
||||
|
||||
service.Start(Configure.ListenOn)
|
||||
|
||||
// with activating
|
||||
withModel() // model
|
||||
withMemCache() // mem cache
|
||||
withRedisCache() // redis cache
|
||||
withPulsar() // mq - pulsar
|
||||
|
||||
// service done.
|
||||
service.Done(&Configure.Prometheus, &Configure.Telemetry)
|
||||
|
||||
}
|
||||
21
apps/ec/delivery/internal/impl/model.go
Normal file
21
apps/ec/delivery/internal/impl/model.go
Normal file
@@ -0,0 +1,21 @@
|
||||
package impl
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"git.apinb.com/bsm-service-ec/delivery/internal/models"
|
||||
|
||||
"git.apinb.com/bsm-sdk/engine/print"
|
||||
"git.apinb.com/bsm-sdk/engine/vars"
|
||||
)
|
||||
|
||||
func withModel() {
|
||||
if Configure.DSN != "" {
|
||||
err := models.New(Configure.DSN, nil)
|
||||
if err != nil {
|
||||
print.Fail("[Blocks Service] %s Model Error: %d", vars.ServiceKey, err.Error())
|
||||
os.Exit(0)
|
||||
}
|
||||
print.Info("[Blocks Service] %s Database Source: %s", vars.ServiceKey, Configure.DSN)
|
||||
}
|
||||
}
|
||||
24
apps/ec/delivery/internal/impl/mq.go
Normal file
24
apps/ec/delivery/internal/impl/mq.go
Normal file
@@ -0,0 +1,24 @@
|
||||
package impl
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"git.apinb.com/bsm-sdk/engine/print"
|
||||
"git.apinb.com/bsm-sdk/engine/queue/pulsar"
|
||||
"git.apinb.com/bsm-sdk/engine/vars"
|
||||
)
|
||||
|
||||
var MQ *pulsar.Pulsar
|
||||
|
||||
func withPulsar() {
|
||||
if Configure.Pulsar.IsHas() {
|
||||
mq, err := pulsar.NewPulsar(&Configure.Pulsar)
|
||||
if err != nil {
|
||||
print.Fail("[Blocks Service] %s Pulsar Error: %d", vars.ServiceKey, err.Error())
|
||||
os.Exit(0)
|
||||
} else {
|
||||
MQ = mq
|
||||
print.Info("[Blocks Service] %s Queue/Pulsar Endpoint: %s", vars.ServiceKey, Configure.Pulsar.Endpoints)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user