طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

آموزش ساخت Queue در PHP – قسمت اول


آموزش ساخت Queue در PHP

در این سری از آموزش قصد داریم در مورد اینکه Queue چیست و چه کاربردی دارد و مثال هایی از ساخت Queue در PHP را باهمدیگر ببینم.

خیلی از مواقع در برنامه های تحت وب عملیاتی مانند ارسال ایمیل وجود دارند که زمان بر هستند و این پروسه ها ممکنه باعث کندی برنامه ی ما می شوند.. در این موارد Queue ها کار ما رو راحت تر میکنند.

با استفاده از قابلیت صف بندی (Queue) در php و اجرای کدها در پس زمینه، به شکل قابل ملاحظه ای سرعت سایت شما افزایش می یابد.

queue ها به شما این امکان را می دهند تا پردازش کارها و عملیات زمان بر همچون ارسال ایمیل را به تعویق انداخته و بدین وسیله سرعت پاسخ دهی به درخواست های ارسالی به اپلیکیشن تحت وب خود را به شکل چشم گیری افزایش دهید.

 

در آموزش ساخت Queue در PHP قصد داریم به شما نحوه صف بندی کارها در PHP و نحوه پیاده سازی یک مثال ساده از مدیریت پروسه ها با Queue در PHP را به شما نمایش بدیم.

این صف (Queue) ها می توانند در دیتابیس (MySQL ..) یا Redis (نوعی دیتابیس NoSQL که در رم ذخیره می شود) ذخیره شوند .

آموزش ساخت Queue در PHP

اهمیت استفاده از Queue برای افزایش عملکرد

صف ها همه جا وجود دارند. زمانی که یک تصویر را از آیفون خود حذف می کند, به Bin منتقل و بعد از ۳۰ روز حذف می شود. این یک صف (Queue) است. بدون این صف بندی, شما نخواهید توانست تصویری که به اشتبا پاک شده است را بازگردانی (recovery) کنید.

حتما بخوانید  ترکیب فایل های css یا js توسط php

زمانی که در هواپیما هستید و ۳ یا ۴ ایمیل را بصورت آفلاین می نویسید, آن را داخل پوشه outbox ذخیره می کنید تا زمانی که به کانکشن WIFI متصل شدید آن ایمیل ها ارسال بشند. این یک صف است.بدون این صف بندی شما نمی توانید چندین پیام را بصورت آفلاین بنوسید.

به معنای واقعی کلمه, یک queue مثل صف طولانی خرید مثلا در رستوران های مک دونالد است,  مدیران فقط سفارش مشتری بعدی را دریافت و آن را آماده می کنند. اگر فقط یک مدیر وجود داشت, پروسه صف بندی بسیار طول می کشید و درنهایت سود بزرگی از دست می رفت!

 

بنابراین یک صف (Queue) به شما اجازه می دهد که کار بین چندین پردازنده (که به نام “agents” یا “worker” در لاراول) تقسیم شود.

سه مثال وجود دارد که فقط اصول پایه صف بندی را نشان می دهد :

  1. Queue ها باعث بهتر شدن تجربه کاربری (UX) می شوند.
  2. Queue ها اجازه به عقب افتادن عملیات سنگین می شود که در نتیجه باعث ایجاد رابط کاربری قوی تری می شود.
  3. Queue ها اجازه تقسیم کارها بین تعداد زیادی به اصطلاح کارگر “worker” می شود.

تعجبی ندارد که اگر از Queue ها در اپلیکیشن تحت وب خود استفاده کنید, توسعه دادن آن لذت بخش تر و برنامه شما قوی تر می شود.

 

یک مثال سریع و ساده از ارسال اطلاع رسانی ایمیل بعد از خرید موفق را می زنم. اگر کاربر را مجبور کنید که صبر کند تا ایمیل به موقع برایش ارسال شود و سرور ایمیل شما کند باشد, مطمینا کاربر به اندازه اینکه بعد خرید, سریعا ایمیل “سلام , از خرید شما متشکریم . لینک های دانلود به شرح …” را دریافت کند, خوشحال نخواهد بود.

حتما بخوانید  ساخت قالب ایمیل داینامیک در PHP

برای دستیابی به این سرعت از پاسخ رابط کاربری, نیاز است که اطلاع رسانی (notification) را در صف اطلاع رسانی ذخیره و آن را بعدا به زودی نه فورا, پردازش کنید.

بیاید شفاف ساز کنیم یک صف چیست : از لحاظ فنی , صف ها یک ساختار داده هستند که داده ها از یک سر صف وارد و از یک سر بعدی صف خارج می شوند.

یک مثال از کارواش و خط ماشین ها این است: اولین ماشین از خط وارد کارواش می شود و سپس از آن خارج می شود, و سپس دومین ماشین وارد میشود و به همین صورت ادامه پیدا می کند.

آموزش ساخت Queue در PHP

این همان دلیلی است که آن را FIFO می نامیم (اولین خروجی از اولین ورودی) و در حسابداری موجودی کالا هم استفاده می شود.

بنابراین قسمت دوم از مقاله آموزش ساخت Queue در PHP در مورد کار با صف ها و صف بندی کارها است. که شامل دو مثال زیر خواهد بود.

  1. چطور یک صف را پر کنید
  2. چطور یک صف را پردازش کنید.

 

امیدوارم قسمت اول از آموزش ساخت Queue در PHP برای شما مفید بوده و تونسته باشید درک خوبی از صف بندی در اپلیکیشن ها و اهمیت استفاده از آن بدست آورده باشید.

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

حسن شفیعی
مدرس ، پنتستر ، توسعه دهنده اپلیکیشن های تحت وب ، عضو مرکز حامی نخبگان و از مدیران و اعضای رسمی تیم امنیتی آشیانه هستم . علاقه خاصی به زبان php و امنیت شبکه و لینوکس دارم و هر روز تلاش می کنم به این حوزه ها مسلط تر شوم و اطلاعاتم را در وب به اشتراک بگذارم

دیدگاه کاربران

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دانلود رایگان (هدیه ویژه)

کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

دانلود رایگان کتاب

آموزش طراحی وب سایت

نظر کاربران عزیز

آموزش های آنلاین در چه زمینه ای تهیه کنیم ؟

نظر شما برای ما بسیار مهم است

Loading ... Loading ...

مجوزهای ما


logo-samandehi نماد اعتماد الکترونیک

بخش کاربران

هنوز عضو نیستید ؟ کلیک کنید

دانلود کتاب

عضویت در خبرنامه