برنامه های مدرن به طور فزاینده ای پیچیده می شوند. عملیات وقت گیر و فشرده منابع ، ارتباط بین چندین سرویس و پردازش مقادیر زیادی از داده ها فقط معدودی از موضوعاتی است که توسعه دهندگان با آن روبرو هستند. خوشبختانه راه حل هایی وجود دارد که می تواند به کاهش برخی از این مشکلات کمک کند. یکی از آنها کارگزار پیام است. یک کارگزار پیام یک نرم افزار است که به خدمات و برنامه ها اجازه می دهد تا از طریق استفاده از پیام ها با یکدیگر ارتباط برقرار کنند. ساختار پیام ها به طور رسمی تعریف شده و مستقل از خدماتی است که برای آنها ارسال می کند.
فهرست مطالب
در این مقاله اطلاعاتی در مورد کارگزاران پیام کسب خواهید کرد. شما همچنین می توانید درک کاملی از مفاهیم اساسی کارگزاران پیام ، مدلهای کارگزاران پیام ، مقایسه بین کارگزاران پیام در مقابل API ها ، بهترین موارد استفاده کارگزاران پیام ، ابزار کارگزار پیام برتر ، مزایا و مضرات کارگزاران پیام کسب کنید. برای یافتن اطلاعات عمیق در مورد کارگزاران پیام ، در کنار هم بخوانید.
فهرست مطالب
کارگزار پیام چیست؟
مفاهیم اساسی کارگزاران پیام
مدل های کارگزاران پیام چیست؟
پیام به نقطه به نقطه
انتشار/مشترک شدن پیام رسانی
مدل های ترکیبی
SNS آمازون
آمازون SQS
مجدداً
خرگوش
آپاچی کافکا
کارگزار پیام چیست؟
یک کارگزار پیام یک نرم افزار است که به برنامه ها ، سیستم ها و خدمات اجازه می دهد تا داده ها را برقرار و تبادل کنند. این کار توسط کارگزار پیام با ترجمه پیام ها بین پروتکل های پیام رسانی رسمی انجام می شود. این خدمات وابسته به هم متقابل را قادر می سازد تا مستقیماً با یکدیگر صحبت کنند ، حتی اگر به زبان های مختلف نوشته شوند یا روی سیستم عامل های مختلف اجرا شوند.
کارگزاران پیام ماژول های نرم افزاری هستند که در راه حل های Middleware یا پیام های میانی نرم افزار (MOM) پیام دهنده قرار دارند. این نوع میانی نرم افزار یک روش استاندارد برای دستیابی به جریان داده ها بین اجزای برنامه را در اختیار توسعه دهندگان قرار می دهد و به آنها امکان می دهد تا روی منطق اصلی برنامه تمرکز کنند. این می تواند به عنوان یک لایه ارتباطی توزیع شده عمل کند و به برنامه های مختلف در سیستم عامل های مختلف امکان برقراری ارتباط با یکدیگر را می دهد.
کارگزاران پیام قادر به اعتبار ، ذخیره ، مسیریابی و ارسال پیام به مقصد مورد نظر خود هستند. آنها به عنوان برنامه های دیگر برای برنامه های دیگر عمل می کنند و به فرستنده ها اجازه می دهند پیام ارسال کنند بدون اینکه بدانند گیرنده ها در کجا هستند ، چه فعال باشند یا چه تعداد وجود دارد. این امر باعث می شود فرآیندها و خدمات در سیستم ها جدا شود.
مفاهیم اساسی کارگزاران پیام
برخی از اصطلاحات اساسی مورد استفاده در کارگزاران پیام به شرح زیر است:
تولید کننده: این یک نقطه پایانی است که هر نوع داده ای را برای ذخیره و توزیع توسط کارگزار پیام ارسال می کند.
مصرف کننده: این یک نقطه پایانی است که داده ها را از کارگزار پیام (پیام) درخواست می کند.
صف: این یک نوع داده است که توسط کارگزار پیام برای ذخیره پیام ها با استفاده از FIFO Logic (اول در اول خارج) استفاده می شود.
مبدل: پیکربندی منطقی یا حتی موجودی که در بالای صف قرار دارد و به کارگزار پیام دستور می دهد نوعی گروهی را ایجاد کند که مصرف کنندگان/تولید کنندگان بتوانند برای ارسال/دریافت پیام بنویسند یا گوش دهند.
HEVO ETL را ساده می کند و تجزیه و تحلیل داده ها را بدون دردسر می کند ، امروز آن را امتحان کنید!
HEVO DATA ، یک محصول خط لوله داده بدون کد می تواند به شما در استخراج ، تبدیل و بارگیری داده ها از مجموعه ای از منابع داده به یک انبار داده مورد نظر خود کمک کند-بدون نیاز به نوشتن یک خط کد واحد. HEVO یک نقشه برداری خودکار را ارائه می دهد که روند مهاجرت ، بارگیری یا ادغام از 100+ اتصالات پشتیبانی شده (از جمله 40+ منبع رایگان) را خودکار می کند.
وی گفت: "با خطوط لوله داده سریع و سریع Hevo ، می توانید یکپارچه داده ها را از چندین منبع به مقصد مورد نظر خود بارگیری کرده و با استفاده از رابط کشیدن و رها کردن آن ، با زحمت داده ها را تغییر دهید."
یک خط لوله داده کاملاً بدون دردسر را از منابع داده مورد نظر خود با استفاده از HEVO تجربه کنید. امروز 14 روز آزمایش کامل دسترسی کامل ما را امتحان کنید!
مدل های کارگزاران پیام چیست؟
کارگزاران پیام دو الگوی توزیع پیام اساسی یا سبک های پیام رسانی ارائه می دهند:
پیام به نقطه به نقطه
انتشار/مشترک شدن پیام رسانی
مدل های ترکیبی
1) پیام به نقطه به نقطه
این الگوی توزیع مورد استفاده در صف پیام است که فرستنده و گیرنده دارای یک رابطه یک به یک هستند. هر پیام موجود در صف توسط یک گیرنده واحد ارسال و مصرف می شود. هنگامی که یک پیام فقط یک بار انجام می شود ، از پیام رسانی نقطه به نقطه استفاده می شود.
حقوق و دستمزد و پردازش معاملات مالی دو نمونه از برنامه های این الگوی توزیع است. هر دو فرستنده و گیرنده در این سیستم ها اطمینان دارند که هر پرداخت فقط یک بار ارسال می شود.
2) پیام رسانی را منتشر یا مشترک کنید
در این الگوی توزیع پیام ، همچنین به عنوان "Pub/Sub" شناخته می شود ، تولید کننده پیام هر پیام را به یک موضوع منتشر می کند ، و مصرف کنندگان پیام های متعدد در موضوعاتی که می خواهند پیام دریافت کنند مشترک هستند. تمام پیام های ارسال شده به یک موضوع به کلیه برنامه هایی که در آن مشترک شده اند توزیع می شوند. این یک روش توزیع به سبک پخش است که در آن ناشر و مصرف کنندگان پیام یک رابطه یک به یک را دارند.
به عنوان مثال ، اگر یک شرکت هواپیمایی به روزرسانی در مورد زمان فرود یا وضعیت تأخیر در پروازهای آن منتشر شود ، چندین مهمانی می توانند از این اطلاعات بهره مند شوند ، از جمله خدمه زمینی که تعمیر و نگهداری هواپیما و سوخت گیری هواپیما ، نگهبانان چمدان ، مسافران پرواز و خلبانانی را که برای هواپیما آماده می شوند ، در مرحله بعدی هواپیما آماده می شوند. سفر ، و اپراتورهای نمایش های بصری که به مردم اطلاع می دهند. در این حالت ، یک سبک پیام رسانی میخانه/فرعی مناسب خواهد بود.
3) مدل های ترکیبی
مدل های ترکیبی در عمل وجود دارند. به عنوان مثال ، هنگامی که چندین سیستم به یک کپی پیام نیاز دارند و در عین حال نیاز به ماندگاری و تداوم در برابر از دست دادن پیام دارد. در این موارد پیام ها باید به طور مشابه با موضوعات توزیع شوند. هر پیام به سیستمی که بیشتر به آن علاقه مند است هدایت می شود. این گیرندگان این توانایی را دارند که مشخص کنند سایر مصرف کنندگان پیام را دریافت می کنند.
کارگزاران پیام در مقابل API
انتقال دولت نمایندگی (REST) به مجموعه ای از اصول و محدودیت هایی اشاره دارد که توسعه دهندگان می توانند هنگام ایجاد خدمات وب از آن استفاده کنند. API های REST معمولاً برای ارتباط بین میکروسرویس استفاده می شوند. هر خدمتی که از آنها پیروی کند ، می تواند با استفاده از یک مجموعه استاندارد از اپراتورها و درخواست های بدون تابش مشترک ، ارتباط برقرار کند.
API های REST برای برقراری ارتباط از پروتکل انتقال HyperText (HTTP) استفاده می کنند. HTTP یک پروتکل درخواست/پاسخ است ، با این حال ، بنابراین بهترین استفاده در موقعیت هایی است که خواستار درخواست/پاسخ همزمان است. این بدان معنی است که خدمات ایجاد درخواست از طریق API های REST باید برای انتظار پاسخ فوری طراحی شوند. اگر مشتری دریافت پاسخ پایین باشد ، سرویس ارسال در حالی که منتظر پاسخ است مسدود می شود. منطق عدم موفقیت و خطا باید در هر دو سرویس ایجاد شود.
در حالی که ، کارگزاران پیام ارتباطات ناهمزمان بین خدمات را فعال می کنند تا سرویس ارسال کننده نیازی به پاسخ خدمات دریافت کننده نباشد. این باعث می شود تحمل و مقاومت در برابر گسل در سیستمهایی که در آن کار می کنند بهبود یابد. علاوه بر این ، استفاده از کارگزاران پیام ، مقیاس سیستم را آسان تر می کنند زیرا یک الگوی پیام رسانی میخانه/زیر می تواند به راحتی از تغییر تعداد خدمات پشتیبانی کند. کارگزاران پیام نیز حالات مصرف کنندگان را پیگیری می کنند.
بهترین موارد استفاده کارگزاران پیام
کارگزاران پیام می توانند برای رفع طیف گسترده ای از نیازهای تجاری در صنایع و در انواع محیط محاسبات سازمانی استفاده شوند.
کارگزاران پیام اغلب به روش های زیر به کار می روند:
پردازش و تحقق سفارش تجارت الکترونیکی: اگر به صورت آنلاین تجارت کنید ، قابلیت اطمینان وب سایت و بستر تجارت الکترونیکی شما قدرت اعتبار برند شما را تعیین می کند. کارگزاران پیام به دلیل توانایی آنها در بهبود تحمل گسل و اطمینان از مصرف پیام ها فقط یک بار ، یک انتخاب طبیعی برای پردازش سفارشات آنلاین هستند.
معاملات مالی و پردازش پرداخت: اطمینان از ارسال فقط یک بار بسیار مهم است. استفاده از یک کارگزار پیام برای رسیدگی به داده های این معاملات تضمین می کند که اطلاعات پرداخت از بین نرود یا به طور تصادفی کپی نشده باشد ، اثبات دریافت را ارائه می دهد و به سیستم ها اجازه می دهد تا حتی در صورت عدم دسترسی به شبکه های واسطه ، به طور قابل اعتماد ارتباط برقرار کنند.
محافظت از داده های بسیار حساس در حالت استراحت و در هنگام حمل و نقل: محافظت از داده های بسیار حساس در حالت استراحت و ترانزیت: اگر صنعت شما بسیار تنظیم شده است یا شرکت شما با خطرات امنیتی قابل توجهی روبرو است ، یک راه حل پیام رسانی را انتخاب کنید که از رمزگذاری نهایی به پایان برسد.
این چیزی است که راه حل ETL Hevo را منحصر به فرد می کند
اتصال دستی منابع داده به بانکهای اطلاعاتی و سپس ایجاد خطوط لوله داده یک کار ماموت است. راه حل خط لوله داده بدون کد HEVO را تجربه کنید که نه تنها به شما در تکرار داده ها از منابع گسترده ای کمک می کند بلکه روند ETL را خودکار می کند و لازم نیست یک خط کد را بنویسید.
بررسی کنید که چرا HEVO بهترین است:
امن: HEVO دارای معماری تحمل گسل است که تضمین می کند که داده ها به صورت ایمن و سازگار با از دست دادن داده های صفر اداره می شوند.
مدیریت طرحواره: HEVO وظیفه خسته کننده مدیریت طرحواره را از بین می برد و به طور خودکار طرح داده های دریافتی را تشخیص می دهد و آن را به طرحواره پایگاه داده رابطه ای شما می رساند.
نقشه برداری خودکار طرحواره: Hevo وظیفه خسته کننده مدیریت طرحواره را از بین می برد و به طور خودکار قالب داده های دریافتی را از یک منبع یا پایگاه داده رابطه ای شناسایی می کند و آن را به طرح واره مقصد تکرار می کند.
Transformations: Hevo تغییرات پیش بارگذاری را ارائه می دهد تا داده های دریافتی شما را برای مقصد انتخابی مناسب کند. همچنین می توانید از تبدیل های کشیدن و رها کردن مانند توابع تاریخ و کنترل، JSON و دستکاری رویداد برای نام بردن چند مورد استفاده کنید.
بارگذاری افزایشی داده: Hevo امکان انتقال داده هایی را که در زمان واقعی تغییر کرده اند را فراهم می کند. این امر استفاده کارآمد از پهنای باند را در هر دو طرف تضمین می کند.
پشتیبانی زنده: تیم Hevo شبانه روز در دسترس است تا از طریق چت، ایمیل و تماس های پشتیبانی، پشتیبانی استثنایی را به مشتریان خود ارائه دهد.
آیا می خواهید هوو را برای چرخش ببرید؟از ثبت نام برای یک دوره آزمایشی رایگان 14 روزه در اینجا برای یک دوره آزمایشی رایگان 14 روزه استفاده کنید و ویژگی های غنی Hevo را تجربه کنید.
بهترین ابزار کارگزار پیام
برخی از بهترین ابزار کارگزار پیام به شرح زیر است:
1) آمازون SNS
سرویس اعلان ساده آمازون (SNS) یک سرویس ابری است که تحویل اعلان های فشار را از برنامه های نرم افزاری به نقاط پایانی مشترک و مشتریان هماهنگ می کند. این امکان را به شما می دهد تا به طور مستقیم اعلان ها را برای مشتریان خود ارسال کنید. می توان از آن برای ارسال پیام های فردی و همچنین در الگوی انتشار-اشتراک استفاده کرد. این جزء خدمات وب آمازون است. یکی از مزایای اصلی آن زیرساخت کم هزینه آن است. همچنین حجم کار در برنامه شما را به طور خودکار کاهش می دهد.
2) آمازون SQS
Amazon Simple Queue Service (SQS) یک سرویس صف پیام کاملاً مدیریت شده است که جداسازی و مقیاس بندی میکروسرویس ها، سیستم های توزیع شده و برنامه های بدون سرور را امکان پذیر می سازد. همچنین می توان آن را به طور خودکار به اندازه حجم کار تغییر داد. آمازون SQS از مکانیزم کششی استفاده می کند، به این معنی که گیرندگان باید پیام ها را از صف های SQS خود بیرون بکشند.
SQS پیچیدگی و سربار مربوط به مدیریت و راه اندازی میان افزار پیام گرا را حذف می کند و به توسعه دهندگان این امکان را می دهد تا بر متمایز کردن کار خود تمرکز کنند. SQS به شما امکان می دهد پیام ها را بین اجزای نرم افزار در هر حجمی بدون از دست دادن پیام ها یا نیاز به در دسترس بودن سایر خدمات ارسال، ذخیره و دریافت کنید.
3) ردیس
Redis یک فروشگاه داده در حافظه است که می تواند به عنوان یک فروشگاه کلیدی با کارایی بالا یا یک کارگزار پیام عمل کند. این یک فروشگاه ساختار داده است که در حافظه نگهداری می شود. در نتیجه ، پیام ها تضمین نمی شوند که در آنجا دوام داشته باشند. رشته ها ، لیست ها ، نقشه ها ، مجموعه ها ، مجموعه های مرتب شده ، Hyper Logs ، Bitmaps و شاخص های مکانی از جمله ساختارهای داده انتزاعی هستند که توسط Redis پشتیبانی می شوند. Redis سریع و سبک است و همین امر باعث می شود در بین بسیاری از توسعه دهندگان در سراسر جهان مورد علاقه خود قرار بگیرد.
4) RabbitMQ
RabbitMQ پرکاربردترین و محبوب ترین نرم افزار کارگزار پیام باز است-یک واسطه پیام رسانی. در ارلانگ نوشته شده است و توسط بنیاد نرم افزار Pivotal پشتیبانی می شود. این یک بستر مشترک و یک مکان امن برای ارسال و دریافت پیام برنامه های شما فراهم می کند.
این می تواند سناریوهای پیشرفته و پیچیده مسیریابی را اداره کند. این چهار نوع مبادله را ارائه می دهد - این یک مؤلفه کارگزار است که پیام ها را به صف های مناسب هدایت می کند. بنابراین پیام ها در مورد RabbitMQ ابتدا به جای صف ها به مبادلات ارسال می شوند. ویژگی های آن شامل عملکرد ، قابلیت اطمینان ، در دسترس بودن بالا ، خوشه بندی و فدراسیون از جمله دیگر است. RabbitMQ با یک رابط مدیریتی ساده همراه است که به شما امکان می دهد کارگزار پیام خود را کنترل و کنترل کنید.
5) آپاچی کافکا
Kafka یک کارگزار صف قوی و یک سیستم پیام رسانی منبع باز است. این یک پلت فرم پخش رویداد توزیع شده است که می تواند حجم زیادی از پیام ها را تحمل کند. پیام های کارگزار Kafka روی دیسک ذخیره می شوند و به شما امکان می دهند یکپارچه پیام از یک نقطه به نقطه دیگر ارسال کنید. پیام های صف پیام Apache در کل خوشه Kafka تکرار می شود تا از انجام عملیات ناخواسته مانند از بین رفتن داده ها جلوگیری شود. پلت فرم پیام رسانی Kafka برای کنترل جریان رویداد در زمان واقعی ، لوله کشی و پخش مجدد داده ها برای عملیات سریع و مقیاس پذیر طراحی شده است.
مزایای استفاده از کارگزاران پیام
برخی از مزایای استفاده از کارگزاران پیام به شرح زیر است:
صرف نظر از فعال بودن مصرف کننده ، تولید کننده می تواند پیام ارسال کند. فقط به یک کارگزار پیام نیاز دارد تا عملیاتی شود. مصرف کننده نیز از این قاعده مستثنی نیست.
کارگزاران پیام پردازش ناهمزمان را اضافه کردند که عملکرد سیستم را بهبود بخشید. کارهایی که به زمان زیادی نیاز دارند می توانند به فرآیندهای مختلف تقسیم شوند. این کار با سرعت بخشیدن به برنامه شما ، تجربه کاربر را بهبود می بخشد.
کارگزاران پیام با اطمینان از انتقال پیام ، قابلیت اطمینان را افزایش می دهند. کارگزاران پیام مکانیسمی برای بازپرداخت ارائه می دهند. در صورت خرابی مصرف کننده ، می توان پیام را بلافاصله یا بعد از یک دوره از پیش تعیین شده دوباره تحویل داد. همچنین امکان مسیریابی پیام های غیرقابل برگشت ، که به عنوان مکانیسم نامه مرده شناخته می شود ، امکان پذیر است.
مضرات استفاده از کارگزاران پیام
استفاده از کارگزار پیام شامل پردازش ناهمزمان است. بنابراین ، مضرات استفاده از آن مربوط به چالش هایی است که ما با استفاده از تماس های ناهمزمان با آن روبرو هستیم.
پیچیدگی سیستم افزایش می یابد: اضافه کردن یک کارگزار پیام به سیستم شما یک مؤلفه جدید به معماری کلی سیستم شما اضافه می کند. در نتیجه ، ملاحظات دیگری نیز وجود دارد ، مانند نگهداری شبکه بین مؤلفه ها یا نگرانی های امنیتی. علاوه بر این ، مسئله جدیدی با قوام نهایی بوجود می آید. تا زمان انتشار و پردازش پیام ها ، برخی از مؤلفه ها ممکن است داده های به روز نداشته باشند.
اشکال زدایی می تواند دشوار باشد: فرض کنید که چندین مرحله ASYNC را برای پردازش یک درخواست واحد با استفاده از کارگزار پیام دارید. شما چیزی ارسال کردید اما پاسخی دریافت نکردید. پیدا کردن علت اصلی خرابی می تواند دشوار باشد زیرا هر سرویس دارای سیاهههای خاص است. همراه با سیستم های اجرایی که از پیام ها استفاده می کنند ، در نظر داشته باشید که برخی از قابلیت های ردیابی پیام را درج کنید.
منحنی یادگیری شیب دار اولیه: کارگزاران پیام به همان اندازه که ظاهر می شوند ساده نیستند. آنها مجموعه ای از گزینه های پیکربندی و تنظیم را دارند. اندازه صف و پیام ، رفتار صف ، تنظیمات تحویل و پیام TTL فقط چند مورد از گزینه های موجود است.
نتیجه
در این مقاله ، شما در مورد کارگزاران پیام آموخته اید. این مقاله همچنین اطلاعاتی در مورد مفاهیم اساسی کارگزاران پیام ، مدل های کارگزاران پیام ، مقایسه بین کارگزاران پیام در مقابل API ، بهترین موارد استفاده کارگزاران پیام ، ابزارهای کارگزار پیام برتر ، مزایا و مضرات کارگزاران پیام ارائه شده است.
HEVO DATA ، یک خط لوله داده بدون کد یک راه حل مداوم و قابل اعتماد برای مدیریت انتقال داده بین انواع منابع و طیف گسترده ای از مقصد مورد نظر با چند کلیک فراهم می کند.
داده های HEVO با ادغام قوی خود با 100+ منبع داده (از جمله 40+ منبع رایگان) به شما امکان می دهد نه تنها داده ها را از منابع داده مورد نظر خود صادر کنید و آن را به مقصد مورد نظر خود بارگذاری کنید بلکه داده های خود را نیز تبدیل و غنی سازی کنید تا آن را تجزیه و تحلیل کنید.-آماده. HEVO همچنین اجازه می دهد تا داده ها را از منابع غیر بومی با استفاده از اتصال داخلی API و Webhooks REST HEVO ادغام کند. سپس می توانید بر نیازهای اصلی تجارت خود تمرکز کرده و تجزیه و تحلیل روشنگری را انجام دهید.
آیا می خواهید Hevo را امتحان کنید؟برای یک آزمایش رایگان 14 روزه ثبت نام کنید و دست اول مجموعه Hevo را تجربه کنید. همچنین ممکن است نگاهی به قیمت شگفت انگیز داشته باشید که به شما در انتخاب بهترین برنامه برای نیازهای خود کمک می کند.
تجربه خود را در درک کارگزاران پیام در بخش نظرات زیر به اشتراک بگذارید! خیلی دوست داریم نظرتان را بدانیم.
دوره ی فارکس...
ما را در سایت دوره ی فارکس دنبال می کنید
برچسب : نویسنده : مهناز افشار بازدید : <-PostHit-> تاريخ : سه
شنبه
6 تير
1402 ساعت: 20:14