Tweet của Facebook thông báo lỗi nghiêm trọng đã được khắc phục

Trong vài ngày vừa qua, mạng xã hội lớn nhất hành tinh Facebook đã liên tục gặp sự cố khiến người dùng không thể đăng nhập hoặc báo lỗi dịch vụ, gây rất nhiều khó khăn cho người dùng. Theo Facebook thì sự cố gần đây nhất cũng là sự cố tồi tệ nhất mà Facebook từng gặp trong vòng 4 năm qua.

Vào sáng ngày 22/09, Facebook đã gặp sự cố đầu tiên khiến một số người dùng rất khó khăn để kết nối đến Facebook. Nguyên nhân của sự cố này theo Facebook là do các nhà cung cấp dịch vụ bên thứ 3. Không lâu sau khi phát hiện sự cố, Facebook đã khắc phục thành công và đưa hoạt động của Facebook trở lại bình thường.

Tưởng chừng mọi việc đã ổn thỏa thì ngay ngày hôm sau 23/09, Facebook lại gặp một sự cố nghiêm trọng hơn. Theo báo cáo từ AlertSite - dịch vụ chuyên quản lí và theo dõi hiệu suất hoạt động các website đã tiến hành ghi chép lại từ 12 điểm theo dõi trên toàn nước Mĩ thì trong khoảng từ 2 giờ 30 đến 3 giờ 30 chiều (giờ Mĩ) chỉ có 38.46% các kết nối đến Facebook thành công với thời gian hồi đáp lên tới 60 giây. Trong khoảng 2 tiếng rưỡi người đùng đã phải rất vất vả để có thể vào được Facebook. Thậm chí các website có tích hợp nút Like của Facebook cũng không thể sử dụng được. Theo đánh giá của Facebook thì đây là sự cố tồi tệ nhất trong vòng 4 năm qua mà Facebook gặp phải. Hiện tại, trong một tweet mới nhất, Facebook thông báo rằng vấn đề này cũng đã được Facebook khắc phục thành công.

Trên blog của bộ phận Facebook Engineering, Facebook đã giải thích lí do về mặt kĩ thuật của sự cố nghiêm trọng nghiêm trọng trên. Facebook cho rằng nguyên nhân chính gây ra sự cố đáng tiếc này là do cơ chế kiểm soát lỗi gặp trục trặc. Hệ thống kiểm tra và xác nhận các giá trị cấu hình đã phá hoại thay vì cố gắng sửa chữa giá trị sai.

Mục đích của hệ thống tự động hóa này là thay các giá trị đã quá cũ trong cache bằng các giá trị chính xác cập nhật từ cơ sở dữ liệu (CSDL). Cơ chế này hoạt động bình thường với các giá trị sai trong cache nhưng nó lại không thể đối phó với các vấn đề phát sinh từ CSDL. Trong khi vào ngày trước đó, các kĩ sư của Facebook đã tạo ra một số giá trị cấu hình lỗi trong CSDL. Và như vậy với mỗi người dùng Facebook, hệ thống tự động sẽ ghi nhận rằng đây là một lỗi và cố gắng sửa chữa. Công việc sửa chữa này yêu cầu phải tạo ra các query đến một cluster bao gồm rất nhiều các database. Cluster này nhanh chóng bị chôn vùi bởi hàng trăm nghìn query trong một giây.

Vấn đề càng trở nên tồi tệ hơn khi mà với mỗi lần người dùng gặp lỗi trong quá trình query một giá trị trong CSDL, hệ thống tự động sẽ ghi nhận rằng giá trị đó là một giá trị sai và ngay lập tức xóa giá trị tương ứng trong cache. Như vậy CSDL càng gặp nhiều thất bại trong việc đáp ứng một số query thì lại càng có nhiều các query mới được tạo ra cho nó. Và một vòng lặp liên hồi các query đã ngăn CSDL có thể tự khắc phục lỗi.

Để ngăn vòng lặp vô tận này Facebook buộc phải ngăn tất cả các kết nối đến cluster đồng nghĩa với việc dừng hẳn hoạt động của website. Sau khi đã khắc phục được vấn đề, chúng tôi đã cho phép các kết nối đến Facebook một cách từ từ.

Hiện tại Facebook đã ngừng hoạt động của hệ thống tự động khắc phục lỗi cấu hình để tìm kiếm một thiết kế tốt hơn cho hệ thống này. Trên blog của mình, Facebook cũng nhận thức được rằng đây là một vấn đề rất nghiêm trọng về hiệu suất và độ tin cậy và là một bài học đắt giá cho Facebook.

Tổng hợp nhiều nguồn



Bình luận

  • TTCN (1)
Hải Nam  30903

Mấy thời điểm Facebook chết làm cái nút Like cũng đi theo Big Grin Khắc phục mất đến 2-3 tiếng thì cũng hơi lâu đấy. Bị thêm vài lần nữa là Diaspora càng có lợi.