Το NSQ είναι ένα λογισμικό ουράς διανεμητικού μηνύματος ανοιχτού κώδικα

NSQ Δωρεάν λογισμικό ουράς μηνυμάτων

Με βάση το GO με βάση το Open Source & Real-Time Distributed

Το NSQ είναι μια διανεμημένη ουρά μηνυμάτων σε πραγματικό χρόνο ανοιχτού κώδικα χωρίς κανένα σημείο αποτυχίας. Είναι μια αξιόπιστη υπηρεσία παράδοσης μηνυμάτων με υψηλή διαθεσιμότητα.

ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ

Το NSQ είναι μια πλατφόρμα ανταλλαγής μηνυμάτων σε πραγματικό χρόνο σε κλίμακα. Διαχειρίζεται τεράστιο αριθμό μηνυμάτων κάθε μέρα, παρέχοντας ανοχή σφάλματος και υψηλή διαθεσιμότητα με αξιόπιστη παράδοση μηνυμάτων. Παρέχει κατανεμημένες και αποκεντρωμένες τοπολογίες χωρίς μεμονωμένα σημεία αποτυχίας. Λειτουργικά, η καλύτερη ουρά μηνυμάτων NSQ είναι εύκολη στην εγκατάσταση, διαμόρφωση και ανάπτυξη. Τα μηνύματα NSQ μπορούν να είναι JSON, MSGPACK, Buffer Protocol ή οποιαδήποτε άλλη μορφή δεδομένων για την επίτευξη μέγιστης ευελιξίας. Οι επίσημες βιβλιοθήκες πελατών GO και Python είναι επίσης διαθέσιμες. Ένας από τους σχεδιαστικούς στόχους του συστήματος ουράς μηνυμάτων NSQ είναι να δεσμεύσει τον αριθμό των μηνυμάτων που διατηρούνται στη μνήμη. Θέματα, ξεχωριστή ροή δεδομένων και καναλιών, λογική ομαδοποίηση ροών ή καταναλωτών που έχουν εγγραφεί σε ένα δεδομένο θέμα είναι τα βασικά πρωτόγονα του NSQ. Η υπηρεσία αναμονής μηνυμάτων NSQ αποτελείται από 3 δαίμονες: Το NSQD είναι ο δαίμονας που λαμβάνει, αποδίδει και παραδίδει μηνύματα στους πελάτες. Το NSQLOOKUPD εξυπηρετεί αιτήματα πελάτη για να βρείτε τη θέση των θεμάτων και διαχειρίζεται τα μεταδεδομένα συμπλέγματος. Παρέχει συνεπή υπηρεσία ανακάλυψης χρόνου εκτέλεσης για τους καταναλωτές να βρουν παραγωγούς NSQD για ένα συγκεκριμένο θέμα. Το NSQADMIN είναι ένα UI υπηρεσίας ιστού για τα διοικητικά καθήκοντα του συμπλέγματος του συμπλέγματος του συμπλέγματος NSQ.

Απαιτήσεις συστήματος

Το NSQ απλό και ο μεσίτης μηνυμάτων ανοιχτού κώδικα εκτελείται:

  • Golang Version 1.13+
  • GPM έκδοση 1.4+
  • Git

Χαρακτηριστικά

Μερικά από τα βασικά χαρακτηριστικά του λογισμικού ουράς μηνυμάτων NSQ παρατίθενται παρακάτω:

  • Υποστηρίζει κατανεμημένες τοπολογίες χωρίς SPOF
  • Τα μηνύματα μπορούν να ρυθμιστούν σε επίμονη λειτουργία
  • Το NSQ υιοθετεί τον τρόπο μνήμης και σκληρού δίσκου
  • Τα μηνύματα παραμένουν στη μνήμη όταν επανεκκινήσει ο διακομιστής
  • Κάθε μήνυμα παραδίδεται τουλάχιστον μία φορά
  • Οριζόντια κλιμακωτή
  • Παράδοση μηνυμάτων χαμηλής λανθάνουσας κατάστασης
  • Κυρίως στην ουρά μηνυμάτων σε μνήμη
  • TLS Transport Layer Security
  • Υπηρεσία ανακάλυψης χρόνου εκτέλεσης για να βρείτε παραγωγούς
  • Μορφή δεδομένων Agnostic
  • Διεπαφή ανθεκτικής διαχείρισης συμπλέγματος
  • Ανοιχτή πηγή

Οδηγίες Εγκατάστασης

Εγκατάσταση NSQ στο Ubuntu

Το NSQ είναι ο καλύτερος μεσίτης μηνυμάτων και είναι εύκολο να ξεκινήσετε την πλατφόρμα ανταλλαγής μηνυμάτων σε πραγματικό χρόνο. Πρώτον, βεβαιωθείτε ότι όλα τα πακέτα Depency του 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"

Τέλος, στο αγαπημένο σας πρόγραμμα περιήγησης στο Web Open http://127.0.0.1:4171/ για να επαληθεύσετε και να δείτε το UI NSQADMIN και να δείτε στατιστικά στοιχεία. Ελέγξτε επίσης τα περιεχόμενα των αρχείων καταγραφής (δοκιμή*. Συγχαρητήρια! Έχετε εγκαταστήσει με επιτυχία το NSQ στο σύστημα Ubuntu. Απολαμβάνω!

Συχνές ερωτήσεις

Τι είναι το NSQ;

Το NSQ είναι μια πλατφόρμα ανταλλαγής μηνυμάτων σε πραγματικό χρόνο ανοιχτού κώδικα που χειρίζεται εκατομμύρια μηνύματα κάθε μέρα. Παρέχει αξιόπιστα μηνύματα χωρίς ανοχή σφάλματος και υψηλή διαθεσιμότητα.

Είναι το NSQ Open Source;

Το NSQ είναι μια καλύτερη ουρά μηνυμάτων ανοιχτού κώδικα και πλατφόρμα διανομής σε πραγματικό χρόνο. Το αποθετήριο πηγαίου κώδικα NSQ διατίθεται στο Github.

είναι δωρεάν το NSQ;

Το NSQ είναι ελεύθερο να χρησιμοποιήσει και να κατανεμηθεί η πλατφόρμα ουράς μηνυμάτων Dowload.

Τι είναι το NSQ vs Kafka;

Το NSQ και το Kafka είναι και οι δύο υπηρεσίες αναμονής μηνυμάτων. Το NSQ είναι απλούστερο για τη διαμόρφωση και πιο εύκολη στην ανάπτυξη πλατφόρμας ουράς μηνυμάτων, ενώ η Kafka εξασφαλίζει αυστηρές εγγυήσεις και αξιοπιστία χωρίς απώλεια δεδομένων.

Σε ποια γλώσσα γράφεται το NSQ;

Το NSQ είναι γραμμένο στη γλώσσα προγραμματισμού GO.

Εξερευνήστε

Σε αυτό το άρθρο συζητήσαμε σχετικά με την πλατφόρμα ανταλλαγής μηνυμάτων σε πραγματικό χρόνο NSQ. Για να μάθετε για άλλα λογισμικά ουράς μηνυμάτων (MQ), επισκεφθείτε τις ακόλουθες σελίδες:

Sidekiq

Apache Kafka

Κουνέλι

Επαναλαμβανόμενος

Σέλινο

Top 5 λογισμικό ουράς μηνυμάτων ανοιχτού κώδικα

 Ελληνικά