Tôi đang phát triển ứng dụng có khả năng mở rộng cao, vì vậy tôi quyết định sử dụng Hazelcast cho ứng dụng đó. Tôi có một máy chủ giao diện người dùng, trong đó đặt thông điệp cho các nút. Mỗi nút trong cluster thay đổi khối lượng công việc trong chuỗi nền trong bản đồ phân tán, do đó, máy chủ giao diện người dùng chọn hàng đợi (mỗi nút có hàng đợi thông báo của riêng nó) để đặt thông điệp. Câu hỏi của tôi là: Hazelcast có phù hợp với thiết kế đó không (chúng ta cần phân phối tải công việc) cân bằng tải) hoặc có thể là một số lựa chọn thay thế? Tôi thích Hazelcast vì nó đơn giản và thiết kế đẹp.Ứng dụng có khả năng mở rộng Java cao với Hazelcast
Trả lời
Hazelcast rất tuyệt, rất nhẹ và dễ sử dụng, tuy nhiên, nó vẫn đang được phát triển và có một vài vấn đề khi sử dụng.
Nếu bạn nhìn vào đây: http://code.google.com/p/hazelcast/issues/list bạn có thể thấy rằng có một số lỗi với cấu trúc dữ liệu hàng đợi trong khi sử dụng giao dịch. Nói chung, nó cung cấp những gì nó quảng cáo và về cơ bản cung cấp cho một bộ nhớ cache phân phối miễn phí.
Tôi có trải nghiệm đầu tay với hazelcast. Phiên bản chúng tôi đã đi đến sản xuất với phiên bản 1.9.4. Gần đây chúng tôi đã nâng cấp lên 2.2 và hiện tại là 2.3. Tôi khá hài lòng với nó. Những gì bạn đang mô tả là một trường hợp sử dụng khá tốt cho hazelcast. Tôi đã có một trường hợp sử dụng tương tự, trong đó mỗi nút có hàng đợi và thông điệp của chính nó được đẩy vào hàng đợi thích hợp dựa trên nút nào mà máy khách đã kết nối. Nó hoạt động rất tốt và doanh nghiệp yêu thích nó.
- 1. Ngăn xếp công nghệ có khả năng mở rộng cao
- 2. Làm thế nào để ứng dụng Java của tôi có khả năng mở rộng và khả năng chịu lỗi?
- 3. Khả năng mở rộng của ứng dụng Meteor
- 4. Khả năng mở rộng là Cầu cảng?
- 5. Khả năng mở rộng DotNetNuke
- 6. Khả năng mở rộng MSMQ
- 7. Tại sao mọi người nói rằng Java có khả năng mở rộng hơn so với python?
- 8. Mẹo CEDET khả năng mở rộng
- 9. ExpandableListView - Có khả năng mở rộng có điều kiện không?
- 10. Khả năng mở rộng dịch vụ Azure
- 11. Có khả năng đặt ứng dụng Java làm trình mở tệp mặc định không?
- 12. Khả năng mở rộng có nghĩa là gì?
- 13. Viết một máy chủ TCP/IP có khả năng mở rộng cao trong C# 5 với mẫu async/await?
- 14. java.io.RandomAccessFile khả năng mở rộng (hoặc các tùy chọn khác)
- 15. Mở rộng các ứng dụng web Java với các plugin
- 16. Khung ứng dụng web được tài liệu hóa, ổn định, an toàn và có khả năng mở rộng là gì?
- 17. VowpalWabbit: Sự khác biệt và khả năng mở rộng
- 18. Nghiên cứu điển hình về khả năng mở rộng
- 19. Khả năng mở rộng là System.Threading.Timer như thế nào?
- 20. Khả năng mở rộng của các mẫu variadic
- 21. Các phiên xử lý cho khả năng mở rộng
- 22. Khả năng mở rộng Websocket, mối quan tâm phát sóng
- 23. Đồng thời và khả năng mở rộng API Web
- 24. Có phải nginx/node.js/postgres là một kiến trúc có khả năng mở rộng không?
- 25. Khả năng mở rộng là ZeroMQ như thế nào?
- 26. Có phiên bản cập nhật của "Cải thiện hiệu suất ứng dụng .NET và khả năng mở rộng" không?
- 27. Mở rộng ColdFusion với các ứng dụng UDF rộng
- 28. ổ cắm web có khả năng mở rộng cân bằng tải
- 29. Mở rộng ứng dụng Java của tôi bằng R?
- 30. Tính sẵn sàng cao và nền tảng có thể mở rộng cho Java/C++ trên Solaris
Họ cập nhật danh sách lỗi của họ khá thường xuyên và khắc phục một số lỗi trong số đó. Tôi đã gửi một báo cáo lỗi một lúc và bây giờ nó đã được sửa. Vì vậy, ít nhất chúng ta biết có rất nhiều người làm việc trên đó. –
Họ đã thêm nhiều tính năng hơn vào Hazelcast bao gồm thiết lập kích thước cụm ban đầu tối thiểu vv. Tính ổn định dường như cũng đã được cải thiện. Một điều khiến tôi băn khoăn một chút là các phiên bản khác nhau của các cụm Hazelcast xung đột với nhau. –