paint-brush
Tình trạng của Webhooks vào năm 2023by@tomhacohen
1,379
1,379

Tình trạng của Webhooks vào năm 2023

Tom Hacohen4m2023/10/28
Read on Terminal Reader

Webhooks hiện là thành phần cốt lõi trong việc thúc đẩy quy trình làm việc dựa trên sự kiện theo thời gian thực trên các nền tảng. Chúng tôi đã xem xét hơn 100 nhà cung cấp API hàng đầu, kiểm tra cách họ sử dụng và triển khai webhook. Hầu hết các nhà cung cấp API hàng đầu có sẵn sàng áp dụng các phương pháp hay nhất không? Những tin nhắn này thường cần bao nhiêu lần thử lại trước khi chúng đến được các ứng dụng định sẵn của chúng một cách thành công?
featured image - Tình trạng của Webhooks vào năm 2023
Tom Hacohen HackerNoon profile picture
0-item


Khi phần mềm tiếp tục chiếm lĩnh thế giới, sự chú trọng ngày càng tăng vào thông tin thời gian thực, tích hợp liền mạch và tự động hóa đã đưa webhooks lên vị trí hàng đầu trong các kiến trúc ứng dụng hiện đại. Webhooks hiện là thành phần cốt lõi trong việc thúc đẩy quy trình làm việc dựa trên sự kiện theo thời gian thực trên các nền tảng. Bạn có thể đọc báo cáo đầy đủ ở đây .


Đặc biệt cảm ơn Ojus Save từ Zoom, Judy Vander Sluis từ Intuit, Sharon Yelenik từ Cloudinary, Sarah Edwards từ Github và Kanad Gupta từ ReadMe vì đã cộng tác với chúng tôi trong quá trình đánh giá tài liệu webhook. Nó thực sự giúp chúng tôi hiểu cách mọi người nghĩ về việc ghi lại API webbook của họ và giúp chúng tôi đưa ra nhiều quyết định khi tạo báo cáo này.


Trong báo cáo toàn diện này về Trạng thái của Webhooks vào năm 2023, chúng tôi đã xem xét hơn 100 nhà cung cấp API hàng đầu, kiểm tra cách họ sử dụng và triển khai webhooks, đồng thời phân tích các cách thức triển khai đa dạng này. Hầu hết các nhà cung cấp API hàng đầu có sẵn sàng áp dụng các phương pháp hay nhất không? Ngoài việc áp dụng đơn thuần, họ đã tối ưu hóa, bảo mật và làm phong phú các dịch vụ webhook của mình như thế nào để đáp ứng nhu cầu của các nhà phát triển và doanh nghiệp ngày nay?


Nhận thấy rằng sự thật cơ bản thường xuất hiện trong các trường hợp sử dụng trong thế giới thực, chúng tôi đã khai thác cơ sở khách hàng của chính mình, biên soạn một bộ nhớ đệm thống kê hấp dẫn làm sáng tỏ thực tế của việc phân phối webhook. Họ có thường xuyên chùn bước trong tự nhiên không? Những tin nhắn này thường cần bao nhiêu lần thử lại trước khi chúng đến được các ứng dụng định sẵn của chúng một cách thành công? Những số liệu thống kê trực tiếp này không chỉ đưa ra một bức tranh rõ ràng về tỷ lệ phân phối thành công hiện tại mà còn chứng minh giá trị của việc triển khai các phương pháp hay nhất.


Nhìn chung, chúng tôi nhận thấy tỷ lệ áp dụng webhook cao ở mức 83%. Tuy nhiên, việc áp dụng hầu hết các phương pháp hay nhất đang bị chậm lại.

Thử lại

Việc thử lại liên quan đến việc gửi lại webhook nếu lần thử không thành công. Chúng rất quan trọng đối với dịch vụ webhook đáng tin cậy vì các sự cố mạng tạm thời, thời gian ngừng hoạt động của máy chủ hoặc các lỗi nhất thời khác có thể cản trở việc phân phối dữ liệu ngay lập tức.


67% dịch vụ được cung cấp thử lại tự động. Số lần thử lại phổ biến nhất được cung cấp là 5 với hầu hết các lần thử lại là từ 3 đến 10 lần. Khoảng 10% dịch vụ cho biết họ đã thử lại các tin nhắn không thành công nhưng không cung cấp bất kỳ thông tin nào về lịch trình thử lại.


Phân phối số lần thử lại được cung cấp

Thử lại: Thời gian chờ theo cấp số nhân

Các lần thử lại Webhook sử dụng thời gian chờ theo cấp số nhân để xử lý lỗi một cách hiệu quả mà không làm quá tải máy chủ nhận.


Bằng cách tăng dần thời gian chờ giữa các lần thử, tính năng này giúp giảm nguy cơ làm trầm trọng thêm các sự cố máy chủ tiềm ẩn và cung cấp cách tiếp cận thích ứng hơn để xử lý các lỗi nhất thời.


25/83 nhà cung cấp xác định rằng lịch trình thử lại của họ tuân theo thời gian chờ theo cấp số nhân.



Tóm lại, webhooks đang được hầu hết các nhà cung cấp API áp dụng nhưng hầu hết chúng không triển khai được các phương pháp hay nhất. Ngay cả những người thực hiện hầu hết các phương pháp hay nhất cũng làm như vậy theo những cách khác nhau. Không gian bị phân mảnh đến mức các nhà cung cấp duy nhất có cách triển khai tương tự là những nhà cung cấp hoàn toàn không triển khai các phương pháp hay nhất. Hy vọng rằng báo cáo này sẽ thúc đẩy việc áp dụng các phương pháp hay nhất về webhook để giúp cải thiện trải nghiệm của nhà phát triển về webhook.

Thử lại thủ công

Khả năng thử lại tin nhắn theo cách thủ công giúp tăng tốc độ khắc phục sự cố. Kích hoạt thử lại ngay lập tức sẽ nhanh hơn thay vì đợi lần thử lại tự động tiếp theo. 12/83 nhà cung cấp chỉ định rằng việc thử lại có thể được kích hoạt theo cách thủ công. Đây là cách thực hành tốt nhất ít được áp dụng nhất.

Ghi nhật ký

Đối với mục đích kiểm tra, khắc phục sự cố và gỡ lỗi, nhật ký các lần thử phân phối webhook cực kỳ hữu ích. Đây là chức năng ít được áp dụng thứ hai với tỷ lệ áp dụng 23%.

Các loại sự kiện

Việc sắp xếp các sự kiện được cung cấp cho người tiêu dùng webhook thành các loại sự kiện cho phép người dùng chọn sự kiện nào họ muốn nhận webhook và cắt giảm số lượng tin nhắn không cần thiết và không liên quan được gửi đi.


93% nhà cung cấp cung cấp các loại sự kiện. Đây là phương pháp hay nhất được áp dụng rộng rãi nhất, có lẽ xuất phát từ thực tế rằng các sự kiện là giá trị cốt lõi của webhook.

Xác thực tin nhắn

Cung cấp cho người dùng cách xác thực nguồn gốc và nội dung của tin nhắn webhook là điều cần thiết để đảm bảo rằng dữ liệu không bị giả mạo trong quá trình truyền và xác nhận rằng dữ liệu đó có nguồn gốc từ một nguồn đáng tin cậy


Cách tốt nhất là sử dụng chữ ký HMACSHA256 có tải trọng, dấu thời gian và ID tin nhắn.



45 trong số 83 nhà cung cấp webhook có dấu thời gian. Dấu thời gian rất quan trọng để ngăn chặn các cuộc tấn công lặp lại.

Tài liệu

Việc ghi chép tốt về dịch vụ webhook có thể giúp người dùng tiết kiệm thời gian và giúp họ bớt đau đầu.


Có mã mẫu giúp cuộc sống của các nhà phát triển dễ dàng hơn. Mặc dù chỉ có 43% được cung cấp mẫu mã, nhưng việc đưa các mẫu mã vào có mối tương quan chặt chẽ với việc sử dụng chữ ký HMACSHA256.


Tài liệu

Kiểm tra

Tài liệu webhook tốt nhất cung cấp hướng dẫn về cách kiểm tra việc triển khai webhook của họ. Hướng dẫn chung bao gồm cách kiểm tra webhook cục bộ (chủ yếu sử dụng ngrok), liệt kê các công cụ khác nhau để thiết lập điểm cuối nhằm nhận thông báo kiểm tra và cung cấp khả năng gửi sự kiện kiểm tra.


Có mối tương quan cao giữa việc có mẫu mã và việc cung cấp hướng dẫn cũng như công cụ để kiểm tra webhook.


72% những người có mẫu mã trong tài liệu của họ cũng cung cấp hướng dẫn kiểm tra.

Vận chuyển

Trong báo cáo đầy đủ, chúng tôi cũng trình bày một số dữ liệu nội bộ của Svix để xem tần suất tin nhắn thất bại, tần suất thử lại thành công, thời gian phản hồi trung bình và kích thước tải trọng trung bình của tin nhắn webhook.


Đọc báo cáo đầy đủ



Để biết thêm nội dung như thế này, hãy nhớ theo dõi chúng tôi trên Twitter , Github hoặc RSS để biết thông tin cập nhật mới nhất về dịch vụ webhook Svix hoặc tham gia thảo luận trên cộng đồng Slack của chúng tôi .