50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

سیستم لاگ عملیات کاربر در PHP

سلام

برای یک وب سایت که بازید نسبتا بالایی خواهد داشت می خواهم سیستم لاگ عملیات کاربر (ورود - ارسال مطلب و ...) درست کنم

میشه مستقیم و به صورت ساده اطلاعات رو توی دیتا بیس ذخیره کرد اما ترسم از اینه که با بالا رفتن بازید سایت این سیستم لاگ موجب کند شدن سایت و معطل شدن کاربر بشه

آیا راهی وجود داره که لاگ ها با کمترین فشار به سرور ذخیره بشه و کاربران معطل ذخیره اطلاعات لاگ نشوند؟

پرسیده شده در 1397/05/14 توسط

1 پاسخ

1

با سلام.

جهت انجام کارهای این چنینی مثل لاگ ، ارسال اس ام اس ، ارسال ایمیل و عملیاتی از این دست که عمدتا به یک منبع خارجی وابستگی داره و میتونه باعث کند شدن روند پاسخدهی به کاربر بشه،

بهتر هست که از یک Message Broker استفاده کنید (مثلا RabbitMQ) ، و عملیات مربوطه رو به یک صف منتقل کنید و اون طرف یک سری Consumer مختص هر عملیات (مثلا SmsConsumer ، EmailConsumer و...) داشته باشید که با دریافت پیام مربوطه عملیات مخصوص به اون صف رو اجرایی کنه . مثلا اگر در صف SmsQueue پیامی درج شد توسط Producer ، مصرف کننده ی SmsConsumer ، فعال بشه و عملیات ارسال SMS رو انجام بده بدون اینکه وقفه ای در روند پاسخدهی به درخواست کاربر ایجاد بشه .

پاسخ در 1401/02/01 توسط

پاسخ شما