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

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

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


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

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

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

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


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

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


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

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


mahdi khanzadi
mahdi khanzadi
تخصص :Software engineer
@khanzadimahdi6 سال پیشمطرح شد
1

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

موفق باشید.


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

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


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

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


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

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


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

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


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

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


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

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

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


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

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

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

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


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

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


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

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


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

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