ایجاد زمانبندی با quartz در Asp.net core
سلام و عرض ادب خدمت دوستان
بنده با quartz یک زمانبندی برای پروژه فروشگاهی Asp.net core قرار دادم که فاکتور یا همون سبد خرید رو آپدیت کنه. به این صورت که مثلا هر یک ساعت یکبار چک کنه فاکتور هایی که یک ساعت از زمان ایجادشون گذشته و نهایی و پرداخت نشدن، قیمت محصولاتش رو آپدیت کنه ( جدول order برای فاکتور هست و جدول orderDetail برای محصولات فاکتور همراه با قیمت ) به این دلیل که کاربری که از کد تخفیف استفاده کرده یا از فروش ویژه محصول اضافه کرده به سبد خرید و قیمت تخفیف خورده ثبت شده در جدول orderDetail ، اون قیمت آپدیت شه که کاربر سو استفاده نکنه و تخفیف رو بزنه و بعد یک ماه خریداری کنه
سوالی که داشتم اینه آیا قرار دادن زمان انجام این job در quartz روی هر یک ساعت یا دو ساعت یکبار، آیا به سرور فشار نمیاره ؟ ساعت پیشنهادی شما چند هست ؟
آیا استفاده از زمانبندی خوبه یا اینکه قیمت قبل نهایی کردن فاکتور توی orderDetail ثبت نشه و با هر بار فراخوانی سبد خرید قیمت هارو از جدول محصول بخونه و اگه کاربری تخفیفی قبلا زده محاسبه شه و همینطور هنگام نهایی کردن هم مجدد بره قیمت هارو محاسبه کنه
ممنون از شما
البته نظر دادن در مورد پروژه ای که هیچ اطلاعاتی در مورد اون پروژه و شرایط انجام اون پروژه نداشته باشی مطمئنا دقیق و کارشناسی نیست و صرفا میشه یک نظر کلی داد. اما به طور کلی Job ها وظایفی هستن که سرور باید طبق زمانبندی اون رو انجام بده. و مطمئنا این وظایف یک بار کم یا زیاد (بستگی به نوع Job) روی سرور داره. اما هر 2 ساعت یکبار بنظر نمیاد زیاد باشه و مشکلی نداره.
اما در مورد پروژه شما به نظر بنده اصلا نیازی به زمانبندی و تعریف Job نیست. شما می تونید سبد خرید کاربر رو قبل از نهایی کردن سبد مجدد کنترل کنید و اگر قیمت یک کالا تغییری کرده باشه یا اینکه موجودی اون کالا 0 شده به کاربر اطلاع بدید.
شما فرض کنید 100 کاربر بیان و کالاهایی رو در سبد خودشون قرار بدن و هیچ کدوم هم سر نزنن به سبدشون و خرید رو قطعی نکنن. دیگه چه نیازی هست که سیستم مرتبا بیاد و سبد کاربر رو چک کنه.
یک پیشنهاد : همیشه سخت ترین راه بهترین راه نیست.
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2