Inhaltsverzeichnis
Heim
Backend-Entwicklung
PHP-Tutorial
Welche Anwendung wird bei umfangreichen PHP-Anwendungen normalerweise für die Nachrichtenwarteschlange verwendet?



Welche Anwendung wird bei umfangreichen PHP-Anwendungen normalerweise für die Nachrichtenwarteschlange verwendet?
Sep 24, 2016 am 09:04 AM
redis
Ich habe Redis als Nachrichtenwarteschlange verwendet und plötzlich dachte ich: Gibt es eine bessere?
Antwortinhalt:
Wir verwenden Bohnenstange, qps beträgt etwa 1000 Wenn Sie lediglich Warteschlangendienste ausführen, empfehle ich Beanstalkd (klein, gute Leistung). Wenn Sie hohe Verfügbarkeit und großes Volumen berücksichtigen, können Sie Kafka verwenden. Warum weisen Sie nicht zunächst auf die Aspekte der bestehenden Lösung hin, die nicht gut genug sind? Ich habe das Gefühl, dass dieses Problem nichts mit PHP zu tun hat? Bei der Auswahl der Nachrichtenwarteschlange werden Geschäftsszenarien stärker berücksichtigt:* Leistung, z. B. wie viele Nachrichten pro Sekunde. Wenn Sie Zehntausende Nachrichten pro Sekunde haben, können Beanstalk und RabbitMQ nicht direkt verwendet werden.
* Zuverlässigkeit, dürfen Nachrichten verloren gehen? Ist Durchhaltevermögen gefragt?
* Hohe Verfügbarkeit, können Ausfallzeiten toleriert werden?
* Ob eine Verteilung erforderlich ist
* Betriebs- und Wartungskosten, ob die Entwicklung (Betrieb und Wartung) Ihres Unternehmens in der Lage ist, diese Nachrichtenwarteschlange aufrechtzuerhalten
* Kundenunterstützung, dies erfolgt auf Sprachebene. Kafka ist beispielsweise eine sehr gute Nachrichtenwarteschlange, aber der PHP-Client ist nicht sehr gut geschrieben und es ist schwierig, ihn selbst neu zu schreiben. Daher sollten Sie bei der Auswahl vorsichtig sein.
Nachdem Sie diese Faktoren abgewogen haben, können Sie entscheiden, wie Sie wählen möchten.
Welche Nachrichtenwarteschlangen gibt es: Nachrichtenwarteschlange
Leistungsvergleich: http://bravenewgeek.com/dissecting-message - Warteschlangen/ redis,rabbitmq Verwenden Sie Redis und Rabbitmq Dies hängt von Ihrem Anwendungsszenario ab. Im Allgemeinen ist die Verwendung von Redis relativ einfach, aber Redis kann die Situation nicht erkennen, in der die Nachricht nicht normal verarbeitet wird und andere Prozesse die Nachricht trotzdem verarbeiten können, d Verarbeitung der Nachricht.
Wenn Sie eine vollständige Nachrichtenwarteschlange wünschen, habe ich Folgendes verwendet: Gearman und Rabbitmq, die beide gut sind. php-resque Getriebemann. Wenn Sie keinen Nachrichtenverlust über Netzwerke hinweg benötigen, können Sie sich auch für Kafka entscheiden Arbeitnehmer
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heißer Artikel
Repo: Wie man Teamkollegen wiederbelebt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Wie lange dauert es, um Split Fiction zu schlagen?
3 Wochen vor
By DDD

Hot-Tools-Tags

Heißer Artikel
Repo: Wie man Teamkollegen wiederbelebt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor
By 尊渡假赌尊渡假赌尊渡假赌
Wie lange dauert es, um Split Fiction zu schlagen?
3 Wochen vor
By DDD

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Lösung für den Fehler 0x80242008 bei der Installation von Windows 11 10.0.22000.100

Analysieren Sie PHP-Funktionsengpässe und verbessern Sie die Ausführungseffizienz

Golang API-Caching-Strategie und -Optimierung

Ist Redis eine nicht relationale Datenbank?

Welches hat die bessere Leistung, Erlang oder Golang?

Caching-Mechanismus und Anwendungspraxis in der PHP-Entwicklung
