Inhaltsverzeichnis
Antwortinhalt:
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: bravenewgeek.com/dissec 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ße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Lösung für den Fehler 0x80242008 bei der Installation von Windows 11 10.0.22000.100 Lösung für den Fehler 0x80242008 bei der Installation von Windows 11 10.0.22000.100 May 08, 2024 pm 03:50 PM

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

So ändern Sie das Passwort in Redis So ändern Sie das Passwort in Redis Apr 20, 2024 am 03:00 AM

So ändern Sie das Passwort in Redis

Analysieren Sie PHP-Funktionsengpässe und verbessern Sie die Ausführungseffizienz Analysieren Sie PHP-Funktionsengpässe und verbessern Sie die Ausführungseffizienz Apr 23, 2024 pm 03:42 PM

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

Ist Redis ein Speichercache? Ist Redis ein Speichercache? Apr 20, 2024 am 05:26 AM

Ist Redis ein Speichercache?

Golang API-Caching-Strategie und -Optimierung Golang API-Caching-Strategie und -Optimierung May 07, 2024 pm 02:12 PM

Golang API-Caching-Strategie und -Optimierung

Ist Redis eine nicht relationale Datenbank? Ist Redis eine nicht relationale Datenbank? Apr 20, 2024 am 05:36 AM

Ist Redis eine nicht relationale Datenbank?

Welches hat die bessere Leistung, Erlang oder Golang? Welches hat die bessere Leistung, Erlang oder Golang? Apr 21, 2024 am 03:24 AM

Welches hat die bessere Leistung, Erlang oder Golang?

Caching-Mechanismus und Anwendungspraxis in der PHP-Entwicklung Caching-Mechanismus und Anwendungspraxis in der PHP-Entwicklung May 09, 2024 pm 01:30 PM

Caching-Mechanismus und Anwendungspraxis in der PHP-Entwicklung

See all articles