آموزش Pub-Sub:ارسال پیام بین Laravel و Nodejs با استفاده از Redis



visibility  
mode_comment   ۷

pub-sub چیست؟

در نرم افزار تلگرام بخشی به نام کانال وجود دارد، این کانال را در نظر بگیرید که مثلا یک میلیون نفر عضو آن شده اند و مدیر (publisher) کانال با ارسال پیام به کانال در واقع آن را برای همه مخاطبین (subscribers)  کانال ارسال می کند. این روش یک پیاده سازی دقیق از pub-sub می باشد.

pub-sub

pub-sub یک مدل از message pattern ها

در دنیای نرم افزار روش هایی برای ارسال پیام بین سیستم های مختلف و مجزا از هم وجود دارد که با عنوان message pattern شناخته می شوند. این روش ها باعث می شود بتوانیم پیام هایی از هر نوع را بدون در نظر گرفتن پلت فرم های مبدا و مقصد ارسال کنیم. مثلا در وب سرویس های Soap شما یک پیام و درخواست از زبان PHP به سیستمی ارسال می کنید که با پلت فرم .Net طراحی شده است و متناظر با درخواست ارسال شده یک جواب دریافت می کنید.

در سیستم های بزرگ نرم افزاری که روزانه میلیارد ها داده ارسال و دریافت می شود نقش message pattern ها بسیار حیاتی می باشد. نرم افزار تلگرام یکی از نمونه های واقعی استفاد از این مدل pub-sub برای اطلاع رسانی و ارسال پیام می باشد. البته باید در نظر داشته باشید الزاما منظور از پیام فقط پیام متنی ساده یا ویدیویی نیست بلکه پیام می تواند شامل هر نوع محتوایی باشد.

 

در ویدیوی زیر می توانید پیاده سازی مدل pub-sub با استفاده از دیتابیس Redis را در فریمورک Laravel و Nodejs مشاهده کنید.

متخصص PHP
اگر دوست داری برنامه نویسی PHP رو حرفه ای یاد بگیری آیا می دانید بیش از ۸۰% وب سایت های موجود در ایران از جمله لیدرهای بازار وب (اسنپ، اسنپ فود، نت برگ، دیجیکالا، الوپیک و ... ) زبان برنامه نویسی PHP را به عنوان زبان اصلی برای پیاده سازی امکانات سمت سرور خود انتخاب کردند! متخصص PHP arrow_back
7Learn Experts
comment دیدگاه کاربران
Tabesh Rouhani replyپاسخ

من کامل متوجه مطلب شما نشدم
چون node.js تاحالا کار نکردم
من فکر میکردم قراره مثلا یک سیستم توی پروژه لاراولی راه بنذارید که هر وقت مثلا ادمین پیامی به کاربر ارسال کرد براش نوتیفیکشین بره یا کاربر بتونه چت آنلاین با ادمین داشته باشه
حالا نمیدونم فقط قراره به همین شکل گفته بشه یا اون ها هم راه اندازی میشه ؟
چون این که شما گفتید برای کسی که node رو خوب بلده ok هست ولی برای کسی که بلد نیست گنگ هست
و اینکه سیستم عامل شما برای دوره متخصص چی هست ؟ مک یا اوبونتو

کیوان علی محمدی

من در ویدیو توضیح دادم که روش های استفاده از این سیستم چه مواردی می تونه باشه. در واقع این آموزش به صورت abstract موضوع رو توضیح میده و میشه برای اون کلی پیاده سازی از سیستم نوتیفیکشن تا سیستم چت در نظر گرفت.

Tabesh Rouhani replyپاسخ

این ویدئو چکیده است یا کلا قسمت realtime دوره متخصص چکیده است ؟

کیوان علی محمدی

این ویدیو از ویدیوهای دوره متخصص جداست.

Tabesh Rouhani replyپاسخ

سیستم عامل شما برای دوره متخصص چی هست ؟ مک یا اوبونتو
چون میخوام منم همونو داشته باشم

کیوان علی محمدی

هم از ویندوز استفاده می کنیم و هم از ubuntu

seyed mousavi replyپاسخ

سلام بسیار عالی بود
از nodejs بیشتر آموزش بزارید ممنون

add_circle ارسال دیدگاه

خوشحال میشیم دیدگاه و یا تجربیات خودتون رو با ما در میون بذارید :