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.