سامان
4 سال پیش توسط سامان مطرح شد
5 پاسخ

ذخیره موقت صفحه html

سلام . من در برنامه ام به سرور درخواست یک صفحه ای را میدهم ، مثلا یک نمودار . سرور برای تهیه این صفحه قدری روی دیتابیس پردازش میکند و سپس صفحه را به سمت کلاینت ارسال میکند . این فرآیند ممکنه با توجه به حجم پردازشی که سرور انجام میدهد قدری طولانی بشه مثلا 20 ثانیه طول بکشه . تا اینجاش مشکلی نیست . میخواستم یکبار که این عمل انجام شد تا نشست کاربر تمام نشده ، هرگاه که کاربر مجدد اون صفحه را درخواست کرد اون صفحه از خود کلاینت لود بشه و معطل پردازش مجدد که قطعا تغییری نکرده نشه . آیا راهکاری برای اینکار وجود داره ؟ ممنونم


ثبت پرسش جدید
محسن بستان
تخصص : Senior Backend Developer
@mohsenbostan 4 سال پیش مطرح شد
1

@samanf33
سلام.
برای این کار می تونید کوئری دیتابیس رو کش کنید. از ابزار هایی مثل redis یا memcached می تونید استفاده کنید.


اشکان نظری
تخصص : برنامه نویس
@ashkannazari248 4 سال پیش آپدیت شد
0

سلام. از cache استفاده کنید


مهدی عقیقی
تخصص : برنامه نویس وب
@MehdiAghighi 4 سال پیش مطرح شد
0

@ashkannazari248 سلام وقتتون بخیر.

دو راه دارید یکی کش کردن سمت سرور و یکی کش کردن سمت کلاینت.

سمت سرور خیلی کار سختی نیست می تونید از فاساد Cache لاراول استفاده کنید.

این لینک بهتون کمک میکنه


اشکان نظری
تخصص : برنامه نویس
@ashkannazari248 4 سال پیش آپدیت شد
0

@MehdiAghighi
سلام. چرا من رو تگ کردین؟!
کش کردن سمت سرور یعنی استفاده از منابع سرور و باز باید درخواست برای دریافت کش سمت سرور ارسال بشه!


مهدی عقیقی
تخصص : برنامه نویس وب
@MehdiAghighi 4 سال پیش مطرح شد
0

@ashkannazari248 ببخشید اشتباه تگ کردم فکر کردم شما سوال رو مطرح کردید.

@samanf33

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


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

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