سؤال

أحاول اكتشاف حل جيد لإرسال إشعارات البريد الإلكتروني بناءً على تفضيلات المستخدم.يمكن للمستخدمين إعداد الإخطارات القادمة

  • في كل مرة يقع الحدث
  • مرة واحدة في الساعة
  • مرة واحدة في اليوم
  • مرة في الأسبوع

هل أفضل طريقة للقيام بذلك هي إعداد crontab الذي يقوم بتشغيل ملف .php كل دقيقة للتحقق مما إذا كان هناك أي شيء يجب إرساله؟هل هناك طريقة أخرى/طريقة أكثر فعالية لجدولة شيء مثل هذا؟

هل كانت مفيدة؟

المحلول

أود أن أقول ما يلي:

  • في حالة ضرورة إرسال البريد الإلكتروني في كل مرة يحدث فيها الحدث، فلن تحتاج إلى أي crontab.فقط أرسل البريد الإلكتروني عند وقوع الحدث.
  • قم بتشغيل crontab مرة واحدة في الساعة.سيجلب crontab هذا جميع الأحداث من الساعة الأخيرة، ويرسل بريدًا إلكترونيًا يحتوي على كل هذه الأحداث إلى المستخدمين الذين يطلبون بريدًا إلكترونيًا كل ساعة.
  • افعل الشيء نفسه مرة يوميًا ومرة ​​أسبوعيًا للمستخدمين الذين لديهم تفضيلات رسائل البريد الإلكتروني اليومية والأسبوعية.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top