Xử lý lỗi AWS Serverless cho các sự kiện dựa trên luồng
Xử lý lỗi cho các sự kiện dựa trên luồng
Các nguồn sự kiện dựa trên luồng phải giữ thứ tự bản ghi nhất quán trên các phân đoạn.
Các nguồn sự kiện dựa trên luồng có thể là Luồng dữ liệu Kinesis hoặc Luồng DynamoDB.
Nếu Lambda gặp sự cố khi xử lý một loạt dữ liệu, nó sẽ ngừng xử lý dữ liệu mới.
Một lô dữ liệu là một lượng lớn dữ liệu.
Để khám phá các phân đoạn bị chặn, bạn có thể sử dụng số liệu Iterator-Age .
Nó đo tuổi của luồng ghi lại chức năng của bạn được xử lý gần đây.
Quản lý lỗi
Bằng cách sử dụng bốn tùy chọn cấu hình, bạn có thể quản lý lỗi tốt hơn:
- Bisect lô về lỗi chức năng
- Số lần thử lại tối đa
- Tuổi kỷ lục tối đa
- Điểm đến không thành công
Nếu xảy ra lỗi chức năng, Lambda sẽ chia lô làm đôi và tiếp tục từng nửa riêng biệt.
Số lần thử lại tối đa và thời gian ghi tối đa sẽ giới hạn số lần thử lại trên một lô không thành công.
Điểm đến không thành công cho phép bạn gửi các bản ghi không thành công để xử lý ngoại tuyến.
Xử lý lỗi đối với video sự kiện dựa trên luồng
W3schools.com cộng tác với Amazon Web Services để cung cấp nội dung đào tạo kỹ thuật số cho sinh viên của chúng tôi.
Cách xử lý lỗi cho các sự kiện dựa trên luồng hoạt động
Khi một hàm tạo ra lỗi, Lambda chia lô làm đôi ( Bisect batch ).
Lambda cung cấp từng nửa riêng lẻ cho chức năng của bạn, giữ trật tự hồ sơ.
Khi Lambda chia một lô, nó cũng đặt lại các tham số thử lại và tuổi tối đa.
Lambda sẽ tiếp tục chia các đợt cho đến khi tìm thấy bản ghi xấu.
Lambda sẽ tiếp tục cố gắng gửi bản ghi xấu theo số lần thử lại tối đa.
Lambda sẽ gửi nó đến chủ đề SNS được xác định cho đích đến bị lỗi nếu nó tiếp tục bị lỗi.
Sau khi xóa bản ghi lỗi, Lambda sẽ xem lại từng lô nhỏ hơn mà nó đã tạo.
Nhược điểm của quá trình này là một số hồ sơ có thể được xử lý nhiều lần.
Nó còn được gọi là sự bình thường .
Idempotency phải được quản lý bởi bạn.