امیر سلمانی
6 ماه پیش توسط امیر سلمانی مطرح شد
2 پاسخ

ساختار بیشترین بازدید و ...

سلام خسته نباشید من تیبل پروداکت رو دارم
برای عمل فیلتر کردن داده نیاز دارم بیشترین بازدید و کمترین بازدید رو انجام بدم
یکی از راه ها این که بیام توتیبل پروداکت فیلدی اینتجری اضافه کنم که با هربار درخواست بهش یک اضافه کنم و براساس اون فیلتر انجام بدم
مشکل این که احساس میکنم لود بالایی میتونی داشته باشه بعدا
مثلا با هربار درخواست به دیتیل صفحه پروداکت باید یک عدد اضافه و سپس ذخیرش کنم.

راه کار بعدی که به ذهنم میرسه استفاده از ردیس
که بیام به هر ایدی از محصول کلید بدم و به هربار درخواست به ولیو اون کلید یک اضافه کنم
و نهایتا هر شب ساعت مثلا ۲ ۳ به دیتابیس به صورت اتوماتیک اضافه کنم به فیلد اینتجری که تو پروداکت ایجاد میکنم؟

نظر خاصی دارین برای این نوع سیستم ها ؟


ثبت پرسش جدید
رضافقیه
تخصص : برنامه نویس فول استک, بازیساز
@rezafaghih 6 ماه پیش مطرح شد
1

شیوه ایی که من خودم برای بازدید صفحه استفاده کرده بودم شبیه شیوه دوم بود تقریبا یک تبیل داشتم به اسم view که بازدید های هرکاربر رو با IP اون ذخیره میکرد دلیلش هم این بود که با رفرش کردن صفحه هربار بازدید اضافه نشه و هر بازدید برای یک کاربر خاص ثبت بشه و به صورت هفتگی دیتا هارو به یک کالم در دیتابیس به اسم total_view میدادم و اون تیبل رو خالی میکردم اینجوری بعد از یک هفته اگر کاربر دوباره به اون صفحه اومد از نظر من موردی نداره که یک بازدید مجزا حساب بشه چونکه کسی که بعد از یک هفته میاد داخل یک صفحه دوباره حتما قصد خوندن چیزی یا پیدا کردن چیزی رو داره
اینکار رو میتونی به صورت 24 ساعته هم انجام بدی و ذخیره کنی دیتاهارو برای وبسایتی که من نوشتم بوده نهایت روزانه 500 تا 1500 بازدید ذخیره میکرد که من مشکلی توی لود و سرعت ندیدم زمانی مشکل در لود اتفاق میوفته که حجم یک row از دیتابیس خیلی بالا بره ( مثلا تصور کن یک تیبل به اسم Article داری و کل دیتای محتوای متنی رو داخل یک فیلد به صورت json ذخیره کردی خب ممکنه حجم ریسپانس صفحه تا 300 کیلوبایت به بالا برسه که اون ممکنه باعث کندی بشه ولی زمانی که میخوای عدد یا یکسری row عادی ذخیره کنی مشکلی برای صفحه و حجم دیتابیس نداری چون سایت اگر 10 هزار row هم ذخیره بشه به خاطر اینکه دیتا ها فقط یکسری int هستند نهایت 64 کیلوبایت بشه حجم اون تیبل )


امیر سلمانی
تخصص : backend developer
@salmaniamir13 6 ماه پیش آپدیت شد
0

ممنونم از وقتی که گذاشتین 👍
@rezafaghih


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام