You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

cron.go 1.3 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. Copyright (c) [2023] [pcm]
  3. [pcm-coordinator] is licensed under Mulan PSL v2.
  4. You can use this software according to the terms and conditions of the Mulan PSL v2.
  5. You may obtain a copy of Mulan PSL v2 at:
  6. http://license.coscl.org.cn/MulanPSL2
  7. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
  8. EITHER EXPaRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
  9. MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
  10. See the Mulan PSL v2 for more details.
  11. */
  12. package cron
  13. import (
  14. "github.com/zeromicro/go-zero/core/logx"
  15. "gitlink.org.cn/JointCloud/pcm-coordinator/api/internal/svc"
  16. )
  17. func AddCronGroup(svc *svc.ServiceContext) {
  18. // 删除三天前的监控信息
  19. svc.Cron.AddFunc("0 0 0 ? * ? ", func() {
  20. ClearMetricsData(svc)
  21. })
  22. // 同步任务信息到core端
  23. svc.Cron.AddFunc("*/5 * * * * ?", func() {
  24. SyncParticipantRpc(svc)
  25. })
  26. svc.Cron.AddFunc("*/5 * * * * ?", func() {
  27. list, err := GetTaskList(svc)
  28. if err != nil {
  29. logx.Errorf(err.Error())
  30. return
  31. }
  32. UpdateTaskStatus(svc, list)
  33. UpdateAiTaskStatus(svc, list)
  34. })
  35. svc.Cron.AddFunc("*/5 * * * * ?", func() {
  36. UpdateAiAdapterMaps(svc)
  37. })
  38. svc.Cron.AddFunc("@every 7h30m", func() {
  39. UpdateClusterResource(svc)
  40. })
  41. }

PCM is positioned as Software stack over Cloud, aiming to build the standards and ecology of heterogeneous cloud collaboration for JCC in a non intrusive and autonomous peer-to-peer manner.