ASP.NET Core: Tổng quan về ASP.NET Core SignalR


Khóa học qua video:
Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên

SignalR là gì?

ASP.NET Core SignalR là một thư viện mã nguồn mở giúp đơn giản hóa việc thêm chức năng web thời gian thực vào các ứng dụng. Chức năng web thời gian thực cho phép mã phía máy chủ đẩy nội dung đến máy khách ngay lập tức.

Các ứng cử viên sáng giá cho SignalR:

  • Các ứng dụng yêu cầu cập nhật tần suất cao từ máy chủ. Ví dụ như trò chơi, mạng xã hội, bỏ phiếu, đấu giá, bản đồ và ứng dụng GPS.
  • Bảng điều khiển và ứng dụng giám sát. Ví dụ bao gồm bảng điều khiển công ty, cập nhật bán hàng tức thì hoặc cảnh báo du lịch.
  • Các ứng dụng cộng tác. Ứng dụng bảng trắng và phần mềm họp nhóm là những ví dụ về ứng dụng cộng tác.
  • Ứng dụng yêu cầu thông báo. Mạng xã hội, email, trò chuyện, trò chơi, thông báo du lịch và nhiều ứng dụng khác sử dụng thông báo.

SignalR cung cấp một API để tạo các lệnh gọi thủ tục từ xa từ máy chủ đến máy khách (Remote Procedure Calls - RPC). RPC gọi các chức năng trên máy khách từ mã .NET Core phía máy chủ. Có một số nền tảng được hỗ trợ, mỗi nền tảng có SDK ứng dụng khách tương ứng. Do đó, ngôn ngữ lập trình được gọi bởi lệnh gọi RPC sẽ khác nhau.

Dưới đây là một số tính năng của SignalR cho ASP.NET Core:

  • Xử lý quản lý kết nối tự động.
  • Gửi tin nhắn cho tất cả các khách hàng được kết nối cùng một lúc. Ví dụ, một phòng trò chuyện.
  • Gửi tin nhắn cho khách hàng hoặc nhóm khách hàng cụ thể.
  • Thay đổi để xử lý lưu lượng truy cập ngày càng tăng.
  • Giao thức hub SignalR

Nguồn được lưu trữ trong kho lưu trữ SignalR trên GitHub.

Transport

SignalR hỗ trợ các kỹ thuật sau để xử lý giao tiếp thời gian thực (theo thứ tự giảm dần):

SignalR tự động chọn phương thức vận chuyển tốt nhất nằm trong khả năng của máy chủ và máy khách.

Hub

SignalR sử dụng các hub để giao tiếp giữa máy khách và máy chủ.

Một hub là một đường ống (pipeline) cấp cao cho phép máy khách và máy chủ gọi các phương thức lẫn nhau. SignalR tự động xử lý việc gửi qua các ranh giới của máy, cho phép khách hàng gọi các phương thức trên máy chủ và ngược lại. Bạn có thể chuyển các tham số được gõ mạnh vào các phương thức, điều này cho phép liên kết mô hình. SignalR cung cấp hai giao thức trung tâm tích hợp: giao thức văn bản dựa trên JSON và giao thức nhị phân dựa trên MessagePack. MessagePack thường tạo các thông báo nhỏ hơn so với JSON. Các trình duyệt cũ hơn phải hỗ trợ XHR cấp 2 để cung cấp hỗ trợ giao thức MessagePack.

Hub gọi mã phía máy khách bằng cách gửi thông báo chứa tên và tham số của phương thức phía máy khách. Các đối tượng được gửi dưới dạng tham số phương thức được giải tuần tự hóa bằng giao thức được định cấu hình. Máy khách cố gắng khớp tên với một phương thức trong mã phía máy khách. Khi máy khách tìm thấy kết quả phù hợp, nó sẽ gọi phương thức và chuyển cho nó dữ liệu tham số đã được giải tuần tự hóa.

Các trình duyệt không hỗ trợ ECMAScript 6 (ES6)

SignalR nhắm mục tiêu ES6. Đối với các trình duyệt không hỗ trợ ES6, hãy dịch thư viện sang ES5. Để biết thêm thông tin, hãy xem Bắt đầu với ES6 – Chuyển ES6 sang ES5 bằng Traceur và Babel.

Tài nguyên bổ sung

Nguồn: learn.microsoft.com
» Tiếp: Triển khai ứng dụng web ASP.NET
Khóa học qua video:
Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên
Copied !!!