Ich war im Moment in Memcached als Möglichkeit, eine Gruppe von Servern zu koordinieren, sondern stieß auf Apache's ZooKeeper auf dem Weg. Es sieht interessant aus, und Yahoo benutzt es, also sollte es nicht schlecht sein, aber ich habe noch nie davon gehört, also bin ich etwas skeptisch. Hat jemand anderes es versucht? Irgendwelche Kommentare oder Ideen?Hat jemand versucht mit ZooKeeper?
Antwort
ZooKeeper und Memcached haben unterschiedliche Zwecke. Sie können memcached verwenden, um die Serverkoordination durchzuführen, aber Sie müssen die meiste Arbeit selbst erledigen. Memcached ermöglicht nur die Koordination, indem es allgemeine Datensuchvorgänge zwischenspeichert, die von mehreren Clients verwendet werden. Aus der Lektüre der Dokumentation von ZooKeeper ergibt sich ein viel breiterer Fokus. ZooKeeper bietet anscheinend Unterstützung für das Server-Clustering, das nicht mit dem von memcached bereitgestellten Cache-Clustering identisch ist.
Werfen Sie einen Blick auf Brad Fitzpatricks Linux Journal article auf Memcached, um eine bessere Idee zu bekommen, was ich meine.
Um einen Überblick darüber zu erhalten, was Zookeper wirklich kann, sehen Sie sich die folgende Präsentation der YouTuber an. Es ist in der Lage, so viel mehr zu erzeugen (Erstellen von Warteschlangen, Auswählen von Hauptprozessen in einer Gruppe von Peers, verteilte Hochleistungslaufkonfigurationen, Rendezvous-Punkte für dissozierte Prozesse, Bestimmen, ob Prozesse noch laufen usw.).
http://zookeeper.sourceforge.net/index.sf.shtml
Ihre Frage zu beantworten, wenn „Koordination“ ist, was Sie für Zookeeper suchen viel besser, dass als Memcached gezielt ist.
Zookeeper eignet sich hervorragend für die Datenübereinstimmung zwischen Servern. Es ist eine gute Aufgabe, jede Transaktion zu bestellen und Garantien zu geben, dass Transaktionen in der richtigen Reihenfolge ablaufen. Beim ersten Einbruch stinkt die Dokumentation jedoch; Es ist sehr "high-level" ohne genug konkrete Beispiele oder Erklärungen, wie man bestimmte Ereignisse richtig behandelt. Eines der enthaltenen Beispiele (ab Version 3.3.3) hatte seine eigenen Fehler.
Ihr Code muss sich auch mit ereignisgesteuerten Interaktionen und Interaktionen befassen. Bei einer massiv verteilten Architektur können Sie, wenn Sie auf "Ereignisse" reagieren, unbeabsichtigt einen Ansturm erzeugen, der für Ihre Umgebung nicht wünschenswert ist (Herdeneffekt).
- 1. Hat jemand versucht, Flax?
- 2. Hat jemand jemals versucht, DialerFilter zu verwenden?
- 3. Hat jemand versucht, Transaktionsspeicher für C++?
- 4. Jemand versucht, meine Website
- 5. Kann mir jemand erklären, was der Bot versucht hat?
- 6. Hat jemand versucht, die Umgebungsvariable UV_THREADPOOL_SIZE zu verwenden?
- 7. Hat jemand Erfahrung mit SSEPlus?
- 8. Hat jemand mit www.atript.com gearbeitet?
- 9. Hat jemand erfolgreich Chat mit Redmine integriert?
- 10. Hat jemand Erfahrung mit CloudFoundry mit Grails?
- 11. IAudioSessionNotification, hat jemand Arbeitscode?
- 12. Hat jemand django_clickpass funktioniert
- 13. Hat jemand versucht, latete Programmierung für C#, mit Lyx und noweb
- 14. Hat jemand vss2git ausprobiert?
- 15. ZooKeeper mit Supervisord überwachen
- 16. Hat jemand SciPy mit IronPython benutzt?
- 17. Hat jemand irgendwelche Erfahrung mit math.net
- 18. Hat jemand mit Silverlight Streaming SDK gearbeitet?
- 19. Hat jemand Erfahrungen mit Eclipse GMF?
- 20. Hat jemand ServiceLoader zusammen mit Guice verwendet?
- 21. Hat jemand BizTalk mit QuickBooks verbunden?
- 22. Hat jemand Erfahrung mit Teleriks RadGrid Paging?
- 23. Hat jemand "GWT Designer" benutzt?
- 24. Hat jemand SubSonic in .Net
- 25. SecureUDID hat jemand ausgiebig getestet?
- 26. Hat jemand NUnitLite erfolgreich eingesetzt?
- 27. Apache ZooKeeper mit einem Client
- 28. Hat jemand versucht, einen PHP Azure App Service auf IIS zu verschieben?
- 29. Wer hat in gdb Reverse-Debugging versucht?
- 30. Hat jemand CosyRoc SSIS + verwendet?