Я разработал приложение и создал маршруты (как REST API) для различных функций, таких как выполнение задания, оплата задания и т. Д. Затем настраиваются маршруты с помощью cron для запуска каждые 10 минут со следующим кодом.
package cron
import (
"gopkg.in/robfig/cron.v2"
"api/config"
)
func main(){
cron.RunCron()
NewRouter()
}
func RunCron() {
c := cron.New()
c.AddFunc("@every 0h10m0s", RunAutoCharge)
c.Start()
}
func RunAutoCharge(){
utils.ExecuteCommand("sh " +config.GetBasePath() + "sh/auto_charge_bookings.sh")
}
Файл sh, упомянутый в функции, содержит следующий api url rest, который запускается при запуске cron
#!/bin/bash
curl "127.0.0.1:8080/merchantname/auto-charge-bookings"
эта настройка работает правильно, но взимает плату с клиентов дважды, при анализе я обнаружил, что API работает дважды за пять минут, что не должно быть
Пожалуйста, помогите мне решить проблему