Các lựa chọn thay thế WebSockets cho trình duyệt Android

Trình duyệt Web có trong hệ điều hành Android không hỗ trợ WebSockets, một giao thức duy trì các kết nối liên tục giữa các máy chủ Web và máy khách Web hoặc trình duyệt. Do đó, nếu doanh nghiệp của bạn có ý định thiết kế các trang web tương thích với Android yêu cầu các kết nối liên tục thay vì các trang không đồng bộ, bạn cần một giải pháp thay thế cho WebSockets, trong đó có một số ít và thực hiện chúng miễn phí. Các triển khai lập trình như BOSH, Giao diện lập trình ứng dụng Google và Comet đều cung cấp các phương thức kết nối liên tục.

Khái niệm cơ bản về WebSockets

Để phát triển bằng cách sử dụng các lựa chọn thay thế cho WebSockets, sẽ giúp biết chúng là gì. Không giống như phát triển "Web 2.0", vốn tập trung vào giao tiếp không đồng bộ giữa trình duyệt máy khách và máy chủ, WebSockets duy trì kết nối mở giữa hai bên. Giao tiếp không đồng bộ đòi hỏi phải "bỏ phiếu" liên tục hoặc kiểm tra, trên một phần của trình duyệt của người dùng. Điều này có nghĩa là trình duyệt sẽ phải hỏi máy chủ xem có thông tin mới trong tài liệu mà không biết trước hay không. WebSockets loại bỏ điều này, giữ liên lạc thường xuyên giữa trình duyệt và máy chủ. Bất kỳ thay thế nên hoàn thành điều tương tự.

BOSH

Vì trình duyệt Android gốc không hỗ trợ WebSockets, bạn phải triển khai một khung công tác khác. Luồng hai chiều qua HTTP đồng bộ cung cấp một giải pháp thay thế như vậy. BOSH bắt chước việc thực hiện một đường truyền TCP liên tục. Trong BOSH, máy chủ không đáp ứng các yêu cầu của trình duyệt cho đến khi nó thực sự có dữ liệu để gửi. Hơn nữa, máy chủ không chấp nhận kết nối máy khách cho dữ liệu cho đến khi kết nối HTTP thứ hai được thực hiện sau khi yêu cầu. Điều này có nghĩa là các kết nối ngay lập tức chỉ xảy ra khi dữ liệu phù hợp với trang được xem có mặt hoặc được gửi, làm giảm băng thông và làm chậm và tăng tốc độ tải trang Web của bạn.

API kênh của Google

API Google Channel duy trì kết nối mở giữa các máy chủ Google và các trang và ứng dụng của Google. Sử dụng ứng dụng khách JavaScript để triển khai API, trang hoặc ứng dụng có thể tạo kết nối an toàn đến các máy chủ của Google, qua đó các máy chủ của Google có thể gửi một luồng dữ liệu liên tục mà không cần bỏ phiếu lặp lại. Điều này cho phép cập nhật theo thời gian thực, có thể chứng minh rất có lợi cho các trang và ứng dụng chạy các trò chơi trực tiếp. Điều này thuận tiện nếu bạn có kế hoạch phát triển các ứng dụng tuân thủ Google.

Sao chổi và AJAX

Mặc dù các ví dụ trước cho thấy cách duy trì các kết nối đồng bộ thông qua các phương thức khác nhau, Comet - với AJAX - các kiểu thử kết nối, trong một khung mở, để duy trì việc sử dụng bỏ phiếu không đồng bộ. Comet cố gắng giảm thiểu các vấn đề với việc bỏ phiếu của khách hàng, bao gồm cả chi phí băng thông và sự chậm lại, bằng cách cung cấp các tiêu chuẩn mà theo đó các máy chủ có thể gửi dữ liệu mà không bị bỏ phiếu. Tuy nhiên, Comet giới thiệu các vấn đề triển khai, trong đó các trình duyệt không sử dụng các phần không thể thiếu của công nghệ, chẳng hạn như mã hóa và xử lý yêu cầu, theo cùng một cách.

Bài ViếT Phổ BiếN