Ứng dụng web ASP.NET MVC 4 của tôi hiển thị dữ liệu cập nhật thường xuyên cho khách hàng. Dữ liệu có nguồn gốc từ một nguồn bên ngoài (một ứng dụng được cài đặt trên máy chủ) và được xử lý bởi SQL Server 2008 R2.Đẩy dữ liệu từ SQL Server sang ứng dụng web bằng SignalR
Hiện tại, luồng dữ liệu khá truyền thống: các cuộc thăm dò của khách hàng từ ASP.NET, các cuộc thăm dò ý kiến ASP.NET lần lượt từ SQL Server.
Để tránh bỏ phiếu (và bây giờ tôi yêu cầu tương tác thời gian thực giữa người dùng ứng dụng web), tôi đang thay đổi cách tiếp cận để đẩy, sử dụng signalR
để phát dữ liệu cho khách hàng. Điều này làm tăng sự êm ái của trải nghiệm người dùng và cũng làm giảm chi phí bỏ phiếu giữa khách hàng và máy chủ ASP.NET.
Vấn đề bây giờ là đảo ngược luồng giữa SSRV và ASP.NET: Tôi muốn đẩy dữ liệu từ SSRV đến ASP.NET theo cách hiệu quả nhất.
SSRV đang chạy các truy vấn tốn kém để nhập một số dữ liệu ngoài - và sau khi dữ liệu được xử lý, chúng cũng sẵn sàng chia sẻ qua Internet thông qua chương trình phát sóng.
Cách tiếp cận người nghèo hiện tại của tôi: đưa ra yêu cầu POST Http tới Ứng dụng web (trên máy chủ cục bộ) để gửi dữ liệu (Tôi đang sử dụng hàm CLR cho điều đó).
Khi dữ liệu được xử lý, tôi gói chúng sẵn sàng cho HttpWebRequest
, xếp hàng chúng trong một Nhà môi giới dịch vụ để tránh ảnh hưởng đến các hoạt động khác và tôi đã hoàn tất.
Tôi đã viết tắt SqlDependency
như sẽ buộc tôi để truy vấn cho dữ liệu - không phải là một lợi thế lớn (Tôi sẽ đánh đổi một yêu cầu localhost HTTP cho một chạy truy vấn trên SQL Server)
Cùng lúc đó tôi cảm thấy nên có một cách neater để làm điều này.
Mọi đề xuất?
vui lòng đã giúp tôi với một số nhận xét về cách tiếp cận này đối với POST đơn giản - bạn có thể đọc chủ đề [tại đây] (https://github.com/SignalR/SignalR/issues/626) – eddo
Bạn có đang trực tiếp phân phát dữ liệu từ dll ** clr của máy chủ sql không ** (máy chủ signalR) cho máy khách signalR? Loại dự án vs là dll này trong? Class Library hoặc Sql Server Database Project? – ibubi