PDA

View Full Version : راهنمایی در خصوص کم کردن فشار به سرور/ نحوه استفاده صحیح از کش ها



alirayaneh
دوشنبه 13 مرداد 1393, 00:58 صبح
با سلام دوستان من میخوام یه پروژه رو با laravel شروع کنم .. این پروژه با توجه با تعداد کاربران و بازدید کنندگانی که خواهد داشت . لازمه که به نحو صحیح از از منابع سرور استفاده کنه تا مشکلی برای اون پیش نیاد و همچنین نیاز به سرعت بالایی داره ..
خوب من در خصوص کش(cach) ، اطلاعاتی در حد مقالاتی که خوندم دارم .. اما متاسفانه بدرستی نمیدونم کدوم اطلاعات نیاز به کش شدن دارند و اصولا چطور باید از بار سرور کم کنم
مثلا وقتی کاربری لاگین کرد و وارد پروفایلش شد اطلاعاتی نظیر شمار پیغام های خصوصی و اطلاعیه های عمومی و آمار کلی سایت که داعما در حال تغیر در صفحه شخصیش بهش نمایش داده میشه ..
خوب اینجا ما باید کدوم اطلاعات رو کش کنیم کدوما رو توی سشن ذخیره کنیم که تا زمانی که کاربر اطلاعات همین صفح رو بارگذاری میکنه نیازی نباشه مجدد به دیتا بیس مراجعه کنیم؟
لطفا اگر امکان داره راهنمایی بفرمایید. با تشکر ..
البته عذر خواهی میکنم تاپیک جدید ایجاد کردم برای اینکه نمیدونستم چطور مطلب و مفهوم سوالم رو جستوجو کنم ..

tux-world
دوشنبه 13 مرداد 1393, 02:09 صبح
خوب اینطور که من فهمیدم شما هنوز هیچ طرحی برای کاری که میخوایید انجام بدید ندارید. شما اول کل طرح و منطق پیاده سازی پروژه خودتون رو در بیارید دقیق خودتون متوجه میشید که کجا ها رو باید کش بکنید. چون ما هم از پروژه شما چیزی نمیدونیم بهترین کسی که میتونه کمک کنه خودتون هستید. دقیق نمیشه گفت کجا ها و چه زمانایی باید ازش کش استفاده کنید بستگی به پروژه شما داره و نوع پیاده سازیش

alirayaneh
دوشنبه 13 مرداد 1393, 02:48 صبح
با تشکر از پاسخ شما دوست عزیز ..
خوب ببینید من در هیچ یک از پروژهایی که تا بحال انجام دادم بر سر استفاده از کش حساسیت زیادی نداشتم و به کش کردن فایلها موجود روی سرور بسنده کردم //
اما اینجا چیزی که مهمه تعداد کاربران آنلاین هست که زیاد هستند و قرار هست بنده با json یه سری اطلاعات رو با کلاینت ها رد و بدل کنم
اما اونچه بنده منظورم بود یه توضیح کلی بود که معمولا در یک پروژه چه قسمت هایی رو برای بازدهیی بیشتر و کم کردن فشار سرور کش میکنند مثلا اطلاعات کاربر رو من در پروژه هام همه رو تبدیل به سشن میکنم و در هر بار لوگین کاربر فقط یه بار از سرور میخونمشون و در هر قسمت از پروفایل که نیاز به نمایش اطلاعات کاربر باشه نظیر نام نام خانوادگی سن و سال قالب و زبان انتخابی کاربر و... از همون سشن ها استفاده میکنم .. هر چند نمیدونم این کار چقدر استاندارد هست ..
اما چیزی که الان مد نظرم هست ایجاد یک پروفایل کاربری برای تبادل اطلاعات ما با کاربر هست کاربر در پروفایلش قسمت های زیر رو داره
پیغام خصوصی شامل نمایش پیام های ارسالی و دریافتی
یاداشت های کاربر / یادوری دفتر برنامه هفتگی
یسری اطلاعات آماری از سایت مثلا تعداد بازدید ها و تعداد کاربران و...
و کانتت اصلی سایت .. سوالات دیگر کاربران هست که در پروفایل کاربر و پاسخ های داده شده به اون ..نمایش داده میشه //چیزی شبیه پرسش و پاسخ کلوب..
سوالی دیگه ای که دارم اینه که استفاده از سشن برای نمایش اطلاعات فشار کمتری به سرور میاره یا استفاده از cach

farzadyazdan
دوشنبه 13 مرداد 1393, 23:19 عصر
با سلام خدمت شما دوست عزیز

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

موفق باشین