Apache Storm - Quy trình làm việc
Một cụm Storm đang hoạt động nên có một nimbus và một hoặc nhiều giám sát viên. Một nút quan trọng khác là Apache ZooKeeper, sẽ được sử dụng để điều phối giữa nimbus và các giám sát viên.
Bây giờ chúng ta hãy xem xét kỹ quy trình làm việc của Apache Storm -
Ban đầu, nimbus sẽ đợi "Cấu trúc liên kết bão" được gửi cho nó.
Khi một cấu trúc liên kết được gửi, nó sẽ xử lý cấu trúc liên kết và tập hợp tất cả các tác vụ sẽ được thực hiện và thứ tự thực hiện tác vụ đó.
Sau đó, nimbus sẽ phân bổ đồng đều các nhiệm vụ cho tất cả các giám sát viên hiện có.
Vào một khoảng thời gian cụ thể, tất cả các giám sát viên sẽ gửi nhịp tim đến nimbus để thông báo rằng họ vẫn còn sống.
Khi một giám sát viên qua đời và không gửi nhịp tim đến nimbus, nimbus sẽ giao nhiệm vụ cho một giám sát viên khác.
Khi nimbus tự chết, người giám sát sẽ làm việc với nhiệm vụ đã được giao mà không gặp bất kỳ vấn đề gì.
Sau khi hoàn thành tất cả các nhiệm vụ, người giám sát sẽ chờ một nhiệm vụ mới đến.
Trong thời gian chờ đợi, nimbus đã chết sẽ được khởi động lại tự động bằng các công cụ giám sát dịch vụ.
Nimmbus được khởi động lại sẽ tiếp tục từ nơi nó dừng lại. Tương tự, người giám sát đã chết cũng có thể được khởi động lại tự động. Vì cả nimbus và trình giám sát đều có thể được khởi động lại tự động và cả hai sẽ tiếp tục như trước, Storm được đảm bảo sẽ xử lý tất cả nhiệm vụ ít nhất một lần.
Khi tất cả các cấu trúc liên kết được xử lý, nimbus sẽ đợi một cấu trúc liên kết mới đến và tương tự như vậy, người giám sát đợi các nhiệm vụ mới.
Theo mặc định, có hai chế độ trong một cụm Storm -
Local mode- Chế độ này được sử dụng để phát triển, thử nghiệm và gỡ lỗi vì nó là cách dễ nhất để xem tất cả các thành phần cấu trúc liên kết hoạt động cùng nhau. Trong chế độ này, chúng tôi có thể điều chỉnh các thông số cho phép chúng tôi xem cấu trúc liên kết của chúng tôi chạy như thế nào trong các môi trường cấu hình Storm khác nhau. Ở chế độ Cục bộ, cấu trúc liên kết bão chạy trên máy cục bộ trong một JVM.
Production mode- Trong chế độ này, chúng tôi gửi cấu trúc liên kết của chúng tôi đến cụm bão đang làm việc, bao gồm nhiều quy trình, thường chạy trên các máy khác nhau. Như đã thảo luận trong quy trình làm việc của cơn bão, một cụm làm việc sẽ chạy vô thời hạn cho đến khi nó ngừng hoạt động.