لاراول یه قابلیت جدید برای صفها اضافه کرده به اسم Debounced که کار اصلیش اینه وقتی یه کار چند بار پشت سر هم اتفاق میفته، لازم نباشه هر بار اجراش کنیم.
مثلا با
مثلا کاربر تو چند ثانیه چند بار تنظیمات پروفایلش رو تغییر میده، به جای اینکه با هر تغییر یه request جدا بفرستیم، صبر میکنیم تغییرات تموم بشه و فقط آخرین وضعیت رو میفرستیم.
یعنی : «۳۰ ثانیه صبر کن، شاید باز هم تغییر کرد؛ ولی بیشتر از ۲ دقیقه دیگه منتظر نمون!»😄
https://laravel-news.com/laravel-debounced-queued-listeners
مثلا با
#[DebounceFor(30, maxWait: 120)] میگیم بعد از هر تغییر، ۳۰ ثانیه صبر کن؛ اگه تو این ۳۰ ثانیه دوباره تغییر جدیدی اتفاق افتاد، تایمر دوباره شروع بشه و فقط آخرین تغییر اجرا بشه. ولی اگه این تغییرات همینطور ادامه داشت، نهایتا بعد از ۱۲۰ ثانیه دیگه صبر نکن و کار رو اجرا کن.مثلا کاربر تو چند ثانیه چند بار تنظیمات پروفایلش رو تغییر میده، به جای اینکه با هر تغییر یه request جدا بفرستیم، صبر میکنیم تغییرات تموم بشه و فقط آخرین وضعیت رو میفرستیم.
یعنی : «۳۰ ثانیه صبر کن، شاید باز هم تغییر کرد؛ ولی بیشتر از ۲ دقیقه دیگه منتظر نمون!»
https://laravel-news.com/laravel-debounced-queued-listeners
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
لاراول با
مثلا میتونید یه پنل تنظیمات داشته باشید و بر اساس ترافیک، مسیر صفها رو عوض کنید؛ مثلا صف
حتی میشه یه Smart Detection ساخت که ترافیک صفها رو مانیتور کنه و خودش بر اساس فشار روی Workerها، صفها رو جابهجا کنه.
یعنی: «کد Jobها همون قبلی، فقط مسیر صفها هوشمندانه عوض میشه.»😇
https://laravel-news.com/laravel-queue-forward
Queue::forward() یه راه ساده داده که مسیر صفها رو از یه جای مرکزی عوض کنیم، بدون اینکه بریم همه Jobها و dispatchها رو تغییر بدیم.مثلا میتونید یه پنل تنظیمات داشته باشید و بر اساس ترافیک، مسیر صفها رو عوض کنید؛ مثلا صف
reports رو از Redis ببرید روی یه connection دیگه.حتی میشه یه Smart Detection ساخت که ترافیک صفها رو مانیتور کنه و خودش بر اساس فشار روی Workerها، صفها رو جابهجا کنه.
یعنی: «کد Jobها همون قبلی، فقط مسیر صفها هوشمندانه عوض میشه.»
https://laravel-news.com/laravel-queue-forward
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4