NSQ یک نرم افزار صف پیام توزیع شده منبع باز است

NSQ نرم افزار صف پیام رایگان

منبع باز مبتنی بر GO و صف پیام توزیع شده در زمان واقعی

NSQ یک صف پیام توزیع شده در زمان واقعی است که هیچ نقطه ای از شکست وجود ندارد. این یک سرویس تحویل پیام قابل اعتماد با در دسترس بودن بالا است.

بررسی اجمالی

NSQ یک بستر پیام رسانی توزیع شده در زمان واقعی در مقیاس است. این تعداد پیام های زیادی را در هر روز انجام می دهد ، تحمل خطا و در دسترس بودن زیاد را با تحویل پیام های قابل اعتماد فراهم می کند. این توپولوژی های توزیع شده و غیرمتمرکز و بدون نقاط شکست را فراهم می کند. از نظر عملیاتی ، بهترین صف پیام NSQ نصب ، پیکربندی و استقرار آسان است. پیام های NSQ می توانند JSON ، MSGPACK ، بافر پروتکل یا هر قالب داده دیگری برای دستیابی به حداکثر انعطاف پذیری باشند. کتابخانه های مشتری رسمی GO و Python نیز در دسترس هستند. یکی از هدف طراحی سیستم صف پیام NSQ ، محدود کردن تعداد پیام های نگهداری شده در حافظه است. مباحث ، جریان متمایز داده ها و کانال ها ، گروه بندی منطقی جریان ها یا مصرف کنندگان مشترک در یک موضوع خاص ، اصلی ترین NSQ هستند. سرویس صف پیام NSQ از 3 Daemons تشکیل شده است: NSQD Daemon است که پیام ها را دریافت می کند ، بافر می کند و پیام هایی را به مشتریان ارائه می دهد. NSQLOOKUPD درخواست های مشتری را برای یافتن مکان مباحث ارائه می دهد و ابرداده خوشه ای را مدیریت می کند. این سرویس کشف مداوم برای مصرف کنندگان را برای یافتن تولیدکنندگان NSQD برای یک موضوع خاص فراهم می کند. NSQADMIN یک UI سرویس وب برای کارهای اداری خوشه در زمان خوشه خوشه NSQ شما است.

الزامات سیستم

کارگزار پیام ساده و منبع باز NSQ اجرا می شود:

  • نسخه Golang 1.13+
  • نسخه GPM 1.4+
  • گیت

امکانات

برخی از ویژگی های اصلی نرم افزار صف پیام NSQ در زیر ذکر شده است:

  • از توپولوژی های توزیع شده بدون SPOF پشتیبانی می کند
  • پیام ها را می توان در حالت مداوم پیکربندی کرد
  • NSQ حالت حافظه و دیسک سخت را اتخاذ می کند
  • هنگام راه اندازی مجدد سرور ، پیام ها در حافظه ادامه می یابد
  • هر پیام حداقل یک بار تحویل داده می شود
  • از نظر افقی مقیاس پذیر است
  • تحویل پیام مبتنی بر فشار کم تأخیر
  • در درجه اول صف پیام های حافظه
  • امنیت لایه حمل و نقل TLS
  • سرویس کشف زمان اجرا برای یافتن تولید کنندگان
  • قالب داده آگنوستیک
  • رابط دولت خوشه قوی
  • متن باز

دستورالعمل نصب و راه اندازی

NSQ را روی اوبونتو نصب کنید

NSQ بهترین کارگزار پیام است و شروع به کار آسان برای شروع به کار در زمان واقعی پیام رسانی توزیع شده است. ابتدا اطمینان حاصل کنید که تمام بسته های دفع NSQ و به روز در سیستم شما نصب شده است. NSQ همه پارامترها در خط فرمان مشخص شده اند و باینری های NSQ کامپایل شده هیچ وابستگی به زمان ندارند. در زیر راهنما نصب NSQ را در Debian و Ubuntu از جمله توزیع بر اساس آنها پوشش می دهد. دستورالعمل های زیر یک خوشه NSQ را در دستگاه محلی شما اجرا می کند. NSQ از ماژول های GO برای تولید ساختهای قابل اعتماد استفاده می کند ، بنابراین از دستورات زیر برای تهیه و تنظیم NSQ استفاده کنید:

    git clone https://github.com/nsqio/nsq
    cd nsq
    make

سه باینری جداگانه NSQLOOKUPD ، NSQD و NSQADMIN وجود دارد که باید نصب و اجرا شوند. بنابراین ، در یک پوسته ، nsqlookupd را با استفاده از:

    nsqlookupd

در پوسته دوم ترمینال ، NSQD را با استفاده از:

    nsqd --lookupd-tcp-address=127.0.0.1:4160

همچنین می توانید-broadcast-address = 127.0.0.1 را اضافه کنید. بیشتر اشکال زدایی ، تجزیه و تحلیل و مدیریت از طریق NSQADMIN انجام می شود. بنابراین ، nsqadmin را با اجرا در پوسته جدید شروع کنید:

    nsqadmin --lookupd-http-address=127.0.0.1:4161

بعد ، یک پیام اولیه را با استفاده از:

    curl -d 'hello world 1' 'http://127.0.0.1:4151/pub?topic=test'

nsq_to_file را در یک پوسته دیگر با دستور شروع کنید:

    nsq_to_file --topic=test --output-dir=/tmp --lookupd-http-address=127.0.0.1:4161

سرانجام ، پیام های بیشتری را به NSQD منتشر کنید مانند:

    curl -d 'hello world 2' 'http://127.0.0.1:4151/pub?topic=test'
    curl -d 'hello world 3' 'http://127.0.0.1:4151/pub?topic=test'

برای تست فرمان اجرای در ترمینال:

    ./test.sh

برای اشکال زدایی و نظارت در زمان واقعی در زیر فرمان نیز بسیار خوب کار می کند:

    watch -n 0.5 "curl -s http://127.0.0.1:4151/stats"

سرانجام ، در مرورگر وب مورد علاقه خود http://127.0.0.1:4171/ را برای تأیید و مشاهده UI NSQADMIN و دیدن آمار باز کنید. لطفاً محتویات پرونده های log (تست.*. ورود به سیستم) را به فهرست /TMP دایرکتوری بررسی کنید. تبریک می گویم! شما NSQ را با موفقیت در سیستم اوبونتو نصب کرده اید. لذت ببرید!

FAQs

What is NSQ?

NSQ is an open source real-time distributed messaging platform that handles millions of messages every day. It delivers reliable messages with no fault tolerance and high availability.

Is NSQ open source?

NSQ is a best open source message queue and real-time distributed messaging platform. NSQ source code repository is available at Github.

Is NSQ free?

NSQ is a free to use and dowload distributed message queue platform.

What is nsq vs kafka?

NSQ and Kafka are both message queuing services. NSQ is a simpler to configure and more easy to deploy message queue platform while Kafka ensures strict guarantees and reliability with no data loss.

In what language is NSQ written?

NSQ is written in Go programming language.

کاوش

در این مقاله ما در مورد بستر پیام رسانی توزیع شده در زمان واقعی NSQ بحث کردیم. برای کسب اطلاعات در مورد سایر نرم افزار صف پیام (MQ) ، لطفاً به صفحات زیر مراجعه کنید:

جانب

آپاچی کافکا

خرگوش

محفوظ

کرفس

5 نرم افزار صف پیام منبع باز برتر

 فارسی