Pracuję nad aplikacją o wysokiej skalowalności, więc postanowiłem użyć do tego Hazelcast. Mam jeden serwer frontendu, który umieszcza komunikaty dla węzłów. Każdy węzeł w klastrze zmienia jego obciążenie w tle wątku w rozproszonej mapie, tak więc kolejka wyboru serwera frontend (każdy węzeł ma własną kolejkę komunikatów), aby umieścić wiadomość. Moje pytanie brzmi: czy Hazelcast nadaje się do takiego projektu (potrzebujemy dystrybucji obciążenia i równoważenie obciążenia) lub może być kilka alternatyw? Lubię Hazelcast za prostotę i ładny design.Aplikacja Java o wysokiej skalowalności z Hazelcastem
Odpowiedz
Hazelcast jest świetny, jest bardzo lekki i łatwy w użyciu, jednak wciąż jest w fazie rozwoju i jest kilka problemów z jego używaniem.
Jeśli spojrzysz tutaj: http://code.google.com/p/hazelcast/issues/list możesz zauważyć, że są pewne błędy w strukturze danych kolejek podczas korzystania z transakcji. Ogólnie rzecz biorąc, zapewnia to, co reklamuje i zasadniczo zapewnia rozproszoną pamięć podręczną za darmo.
Mam doświadczenie z pierwszej ręki z hazelcast. Wersja, do której przeszliśmy na produkcję, to wersja 1.9.4. Niedawno zaktualizowaliśmy system do wersji 2.2, a teraz wersja 2.3 jest najnowsza. Jestem z tego całkiem zadowolony. To, co opisujesz, jest całkiem dobrym przykładem użycia dla hazelcast. Miałem podobny przypadek użycia, w którym każdy węzeł ma swoją własną kolejkę, a komunikaty są przekazywane do odpowiedniej kolejki w oparciu o węzeł, do którego klient był podłączony. To działało wspaniale, a firma to uwielbiała.
- 1. Rozgrzewanie aplikacji Java o wysokiej przepustowości
- 2. Wykres słupkowy o wysokiej szerokości stosu o wysokiej szerokości geograficznej
- 3. Znaczniki czcionek o wysokiej rozdzielczości
- 4. Gdzie szukać informacji na temat architektury witryn o wysokiej skalowalności, takich jak Orbitz, Amazon, Ebay, Linkedin itp?
- 5. Studia przypadków skalowalności
- 6. Jak korzystać z WinMerge z ustawieniem Windows o wysokiej rozdzielczości?
- 7. Kontrola wykresu Silverlight o wysokiej gęstości
- 8. Wyświetlacze Retina, obrazy tła o wysokiej rozdzielczości
- 9. Timer o wysokiej rozdzielczości w .NET
- 10. Timer o wysokiej wydajności kontra StopWatch
- 11. Zegar o wysokiej rozdzielczości dla iPhone'a?
- 12. Czasomierz ObjC/C/C++ o wysokiej rozdzielczości z oddzwonieniem
- 13. JRuby/TorqueBox dla aplikacji o wysokiej wydajności/znaczeniu krytycznym
- 14. Zrozumienie skalowalności aplikacji RShiny hostowanych na ShinyServer
- 15. Automatyczne przeskalowanie aplikacji na platformie Windows o wysokiej rozdzielczości?
- 16. Aplikacja internetowa wykorzystująca transakcje Java o dużym wolumenie
- 17. Modułowa aplikacja java ee
- 18. Aplikacja prosi o połączenie z Internetem
- 19. Aplikacja klienta opc Java
- 20. Aplikacja konsoli Java?
- 21. bieg aplikacja wiersza poleceń interaktywnych z java
- 22. Aplikacja konsolowa z Java i gradle
- 23. Aplikacja tekstowa w języku Java
- 24. Wyświetlanie danych w czasie rzeczywistym o wysokiej wydajności
- 25. Architektura bazy danych Amazon EC2 o wysokiej dostępności
- 26. Zdjęcie ekranu o wysokiej rozdzielczości w systemie Android:
- 27. Aplikacja WWW Java Przód Koniec
- 28. Zegar wysokiej rozdzielczości z C++ i Linux?
- 29. Korzystanie z Tesseract z java
- 30. Zasoby dla komputerów o wysokiej wydajności w C++
Często aktualizują swoją listę błędów i rozwiązują niektóre z nich. Przesłałem raport o błędzie jakiś czas temu i teraz jest on naprawiony. Przynajmniej wiemy, że pracuje nad nim mnóstwo ludzi. –
Dodali więcej funkcji do Hazelcast, które obejmują ustawienie minimalnego początkowego rozmiaru klastra itp. Stabilność również uległa poprawie. Jedną z rzeczy, która mnie trochę martwi, jest to, że różne wersje klastrów Hazelcast są ze sobą w konflikcie. –