mahdi
5 سال پیش توسط mahdi مطرح شد
13 پاسخ

کش سیستم Redis یا فایل در Laravel

سلام
من یه بررسی انجام دادم برای سیستم کش اطلاعات بر پایه file و یا redis در فریم ورک Laravel.
فراخوانی یک داده بزرگ از Mysql نزدیک 13 ثانیه زمان می بره.
فراخوانی همون اطلاعات از cache فایل لاراول کمتر از یک ثانیه زمان و در حدود 0.6 ثانیه زمان نیاز دارد.
همان داده با Redis چیزی در حدود 7 ثانیه زمان می برد.
تصور من این بود که Redis چون از رم استفاده می کنه زمان کمتری از ذخیره اطلاعات در فایل نیاز داشته باشه.
کسی می تونه این تفاوت زمانی رو توضیح بده؟
ممنون


ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

معمولا هنگامی که روی سرور هم از Redis استفاده میشه تنظیماتش رو بهینه میکنند .. maxmemory رو براش تعریف میکنند و اینها

گذشته از این چون در Redis از رَم استفاده میشه و سرعت رم بیشتر از سرعت دیسک هست.. قاعدتا باید سرعتش هم بالاتر باشه.
نتایج زیر مربوط به تست درایور‌های مختلف کشینگ، در یه اپلیکیشن لاراولیه..

چنانچه به درستی از Redis استفاده کنید باید نتایجتون شبیه به مورد بالا باشه
موفق باشید


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

درود.
به ترتیب زمان اگر بخواهیم درایورهای سیستم کشینگ لاراول رو بررسی کنیم
اول file بعدش Memchached و در نهایت Redis که سرعتش از همه بیشتره
تنظیمات Redis بصورت پیش فرض هست؟ چیزی رو عوض نکردید؟


mahdi
تخصص : برنامه نویس ...
@esmahdim 5 سال پیش مطرح شد
0

آره همه تنظیمات به صورت پیش فرضه.
من تصورم این بود که Redis بدلیل اجرا شدن در رم باید سریع تر از file باشه.


mahdi khanzadi
تخصص : backend developer at Snapp mar...
@khanzadimahdi 5 سال پیش مطرح شد
1

@ali.bayat
حدس میزنم ترتیبی که برای سرعت بیان کردین معکوس گفته باشید (شاید منظورتون رو بد بیان کردین).

موفق باشید.


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@khanzadimahdi
درود
من به ترتیب از کند به تند گفتم. اما بهتر بود گزینه‌ها رو تو لیست میزاشتم که واضح‌تر بشه.


علیرضا
تخصص : فرانت اند وب
@sep28 5 سال پیش مطرح شد
0

@ali.bayat
درود.
شاید اینجا جاش نباشه ولی میپرسم.
ببخشید آقای بیات من قصد یادگیری لاراول داشتم و نسخه ی فعلی لاراول 6 هست
سایت راکت روی نسخه ی 5.4 5.7 کار کرده
و من باید این نسخه ها کارکنم و منتظر دوره ی جدید باشم؟
و ایکه لاروال 6 تغییرات زیادی داشته؟
بهترین راه حل چی میتونه باشه از نظر شما/؟


mahdi
تخصص : برنامه نویس ...
@esmahdim 5 سال پیش مطرح شد
0

ببینید تو تستی که من گرفتم Redis خیلی کندتر از file بود، دلیلش چی می تونه باشه؟


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@esmahdim
روی سرور دارید تست می‌کنید؟


mahdi
تخصص : برنامه نویس ...
@esmahdim 5 سال پیش مطرح شد
0

@ali.bayat
من همه رو روی یک سیستم ویندوزی خودم دارم.


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

@sep28
درود
فکر میکنم برای این سوالت یه تاپیک بوجود بیارید بهتر باشه
اما به‌طور خلاصه در نسخه‌‌های جدید همه چیز عوض نمیشه.. تفاوت نسخه ۵.۸ با ۶ در یه سری موارد هست که مستندات بهش اشاره داره
آپگرید ۵.۷ به ۵.۸: https://laravel.com/docs/5.8/upgrade

آپگرید ۵.۸ به ۶: https://laravel.com/docs/6.x/upgrade


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

معمولا هنگامی که روی سرور هم از Redis استفاده میشه تنظیماتش رو بهینه میکنند .. maxmemory رو براش تعریف میکنند و اینها

گذشته از این چون در Redis از رَم استفاده میشه و سرعت رم بیشتر از سرعت دیسک هست.. قاعدتا باید سرعتش هم بالاتر باشه.
نتایج زیر مربوط به تست درایور‌های مختلف کشینگ، در یه اپلیکیشن لاراولیه..

چنانچه به درستی از Redis استفاده کنید باید نتایجتون شبیه به مورد بالا باشه
موفق باشید


1masoud
تخصص : php,laravel
@masoudproton 5 سال پیش مطرح شد
0

@ali.bayat این نتایج رو چطوری بدست بیاریم


1masoud
تخصص : php,laravel
@masoudproton 5 سال پیش مطرح شد
علیرضا دینی
تخصص : برنامه نویس
@alirezadini 4 سال پیش مطرح شد
0

@esmahdim
البته مثل همیشه آقای @ali.bayat با احساس مسئولیت بالا داره سوالارو جواب میده. منم یه نکته ای در تکمیل فرمایشات ایشون به ذهنم ردیس که اینجا برات توضیح میدم.
ببین ردیس طبیعتا به دلیل درگیر نکردن io از همه موارد سریعتر هستش . ( اینجا منظورم از io ذخیره شدن یا نوشته شدن روی دیسک و خوانده شدن اطلاعات از روی دیسک هستش) به همچین خصوصیتی میگن non-persistent.
حالا یه نکته ای وجود داره ، ممکنه توی تنظیمات ردیس پارامتری مبتنی بر ذخیره اطلاعات روی دیسک (هارد) طوری مقدار گرفته باشه که ردیس هربار دیتارو روی هارد بنویسه که در این صورت به شدت راندمان ردیس پایین میاد.


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

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