2009-01-27 36 views
6

Tôi biết câu hỏi này đã được hỏi một chút trước đó. Nhưng nhìn xung quanh tôi vẫn không thể làm cho tâm trí của tôi lên con đường mà tôi nên đi xuống. Đây là kịch bản của tôi, hy vọng bạn có thể giúp đỡ:MSMQ so với Dump Bảng tạm thời

Chúng tôi sẽ có một loạt các dịch vụ web sẽ được cập nhật hàng trăm ứng dụng di động. Các dịch vụ này sẽ có dữ liệu trên thiết bị với thông tin mới, cả về các thiết bị và quay trở lại từ chúng. Dữ liệu được trả về từ các thiết bị sẽ cần phải cập nhật một cơ sở dữ liệu máy chủ SQL trung tâm duy nhất cũng cung cấp một số ứng dụng máy tính để bàn và một trang web.

Để giảm thời gian cho yêu cầu/phản hồi của các dịch vụ này, chúng tôi đã quyết định xử lý dữ liệu đến từ các thiết bị sau khi thực tế bằng cách dán chúng vào một trường hợp MSMQ hoặc lưu trữ các đối tượng được tuần tự hóa lưu trữ dữ liệu và có một dịch vụ cửa sổ xử lý chúng sau này.

Vì vậy, có sự lựa chọn của tôi, nhưng một số tồn tại ở đây này là một vài điều nữa có thể giúp các bạn tư vấn cho tôi:

  • Các dữ liệu trả về từ các thiết bị này sẽ không được trả lại trong các gói tin nhắn nhỏ hơn mà cần phải được đặt phía máy chủ.
  • Tôi không biết gì về MSMQ nhưng trước đây tôi đã viết các dịch vụ cửa sổ. Mặc dù tôi không gặp vấn đề gì khi chọn MSMQ nếu cần.
  • Tôi muốn giữ phản hồi từ các thiết bị trong trường hợp xử lý không thành công vì một số lý do gây ra bởi dữ liệu. Bằng cách này tôi có thể thẩm vấn dữ liệu và xem liệu có sự cố hay không, tức là thiết bị cho phép người dùng thêm nhận xét mở rộng độ dài của trường có liên quan trong cơ sở dữ liệu phía máy chủ.

Với thông tin này, bạn có nghĩ rằng tôi đáng xem xét việc học MSMQ hay tôi nên gắn bó với giải pháp đơn giản hơn?

Chris.

Trả lời

8

MSMQ không phải là một lựa chọn tồi và chắc chắn không khó học, nhưng hãy nhớ rằng có một số hạn chế mà bạn nên biết.

Nhược điểm:

  • Mỗi hàng đợi chỉ có thể là 2GB.
  • Mỗi thông báo 4MB (có thể sửa giới hạn 4MB bằng cách sử dụng MSMQ với WCF).
  • Chỉ dành cho Windows, do đó bạn bị giới hạn sử dụng với thư viện .NET, C/C++ hoặc COM cho môi trường hỗ trợ COM.

Ưu điểm:

  • Hỗ trợ Windows Network Load Balancer.
  • Hỗ trợ Dịch vụ cụm Microsoft.
  • Được tích hợp với Thư mục hoạt động.
  • Giao hàng bằng Windows.
  • Hỗ trợ giao dịch.
  • Tin nhắn MSMQ có thể được theo dõi bằng tin nhắn kiểm tra trong Nhật ký sự kiện Windows.
  • Tin nhắn có thể được tự động xác thực (đã ký) hoặc được mã hóa khi gửi và xác minh và giải mã khi nhận.

Một cách tiếp cận khác mà bạn có thể muốn xem xét là ghi dữ liệu của bạn vào bảng dàn dựng. Điều này có thể là một ý tưởng tốt vì bạn muốn có một thông điệp đăng nhập trở lại.

Rất khó cho lời khuyên khi tôi không biết phần còn lại của kiến ​​trúc của hệ thống, nhưng tôi hy vọng câu trả lời này sẽ giúp ích một chút.

Liên kết hữu ích

Programming MSMQ in .NET - Part 1
Using MSMQ with WCF

+0

Id đã giúp đỡ thankyou – Owen

Các vấn đề liên quan