dao.go 579 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package dao
  2. import (
  3. "context"
  4. "go-common/app/job/live/recommend-job/internal/conf"
  5. "go-common/library/cache/redis"
  6. )
  7. // Dao dao
  8. type Dao struct {
  9. c *conf.Config
  10. redis *redis.Pool
  11. }
  12. // New init mysql db
  13. func New(c *conf.Config) (dao *Dao) {
  14. dao = &Dao{
  15. c: c,
  16. redis: redis.NewPool(c.Redis),
  17. }
  18. return
  19. }
  20. // Close close the resource.
  21. func (d *Dao) Close() {
  22. d.redis.Close()
  23. }
  24. // Ping dao ping
  25. func (d *Dao) Ping(ctx context.Context) error {
  26. // TODO: add mc,redis... if you use
  27. c := d.redis.Get(ctx)
  28. defer c.Close()
  29. _, err := c.Do("ping")
  30. return err
  31. }