Триггер django rest framework зацикливается при задержке сети

1: Я работаю с django rest framework в качестве backend и angular в качестве frontend. Я использую сигналы и приемник django во многих местах моего проекта. в методе pre_save или post_save я сталкиваюсь с общей проблемой. Проблема заключается в том, что в случае сетевой задержки запрашиваемые сигналы выполняются более одного раза. Например, я отправляю уведомление по электронной почте любому клиенту, используя сигнал следующим образом.

pre_save.connect(send_new_coupon_notification_email, sender = coupon)

если из-за задержки отправки электронной почты по сети ответ приходит с задержкой, в таблице coupan будет создано несколько записей. Если ответ приходит быстро, в этом случае все работает нормально.

2: у нас есть две модели на двух серверах, после создания купона на pre_save или post_save мне нужно создать еще одну запись, скажем, в модели бенефициара. как я указываю в этих двух моделях. если бенефициар возвращает подтверждение быстро, то все работает нормально. но опять же в случае сетевой задержки Coupan создает несколько записей.

2.
class Beneficiary(models.Model):
    name = models.CharField(max_length=50)
    coupon_code = models.ForeignKey(coupon, on_delete=models.CASCADE)
    miscValue = models.TextField(blank=True, null=True)
    def __str__(self):
        return self.name

class coupon(models.Model):
    sl_no = models.CharField(max_length=50)
   

@receiver(post_save, sender=coupon) 
def save_profile(sender, instance, **kwargs):
    Beneficiary.objects.create(name="added from reciever", coupon_code=instance)

3: В тестовой среде это работает нормально, так как мы работаем в локальной сети, но как только это переходит в реальную среду, начинается ошибка, так как есть вероятность сетевой задержки.

  1. please help how can i control it and why this is happening? thanks in advance
Вернуться на верх