2010-06-11 26 views

Trả lời

18

tôi đang lập kế hoạch để sử dụng ServiceStack trên hệ thống của tôi, tôi thấy nó rất mát mẻ, rất ấn tượng trong cách nó thực hiện một số mô hình và tôi thích nó là kiến ​​trúc

Có sự khác biệt trong cách bạn có ý định dịch vụ .. Tuy nhiên, các khuôn khổ có thể được sử dụng là: (rõ ràng nó phụ thuộc vào tình huống)

  • Agatha-rrsl mà thực hiện một mô hình rrsl, nó cho phép sử dụng dịch vụ trong một ServerAndClient trong quá trình tương tự hoặc một ví dụ môi trường distribuited. ứng dụng web sử dụng dịch vụ bên ngoài (Agatha sử dụng WCF cho các dịch vụ bên ngoài)
  • OpenRasta một khuôn khổ mạnh mẽ mà có thể được sử dụng để xây dựng toàn bộ một ứng dụng hoặc chỉ đơn giản là REST của dịch vụ
  • NServiceBus mà thực hiện một kiến ​​trúc Dịch vụ xe buýt hoàn chỉnh, và có thể được sử dụng trong một ServerAndClient trong quá trình tương tự hoặc theo một cách distribuited đó là tốt nhất cho khuôn khổ
  • MassTransit tương tự như NServiceBus (cá nhân tôi thích NServiceBUs)
  • SimpleServiceBus tương tự như NServiceBus nhưng đơn giản hơn, mát mẻ
  • RhinoServiceBus, một loại nĩa trên NServiceBus rất rất mát mẻ

Điều rất quan trọng là phải hiểu sự khác biệt giữa khung dịch vụ như Agatha so với dịch vụ xe buýt như NServiceBus. Một điểm tốt có thể là Davy Brion lớn bài đăng blog trên đó luận http://davybrion.com/blog/2010/01/agatha-vs-nservicebus/

Có lẽ nếu tôi nhớ một cái gì đó khác tôi sẽ cập nhật sau Hy vọng nó giúp

+0

http : //trac.caffeine-it.com/openrasta không tìm thấy, lỗi 404 cho tôi – Kiquenet

+0

@Kiquenet liên kết cố định! – Hoghweed

21

Tôi rất vui khi nghe bạn đang xem xét ServiceStack :) , Đó là một khuôn khổ đã được phát triển trong vài năm qua, sinh ra từ sự thất vọng và ma sát gây ra bởi sự cứng nhắc của .NET hiện tại .asmx và WCF SOAP dịch vụ web framework. Tôi thấy rằng không có khung công tác nào trước đây được quảng bá theo phương pháp thông thường đầu tiên theo mã Martin Fowlers, thực hiện tốt nhất các phương pháp thực hành tốt nhất của Martin Fowlers Data Transfer Object Pattern mà tôi tin là có thể phát triển các dịch vụ web được xác định rõ ràng, ít trò chuyện, có thể lưu và sử dụng lại được.

Đó là chính mục tiêu là:

  • Thúc đẩy thực hành tốt nhất C# phát triển - kiểm chứng (endpoint/định dạng thuyết bất khả tri) Dịch vụ lỏng,.
  • Phát triển dịch vụ web tốt nhất - Hợp đồng dịch vụ web của bạn là giao diện quan trọng nhất mà bạn có thể thực hiện, vì vậy nó phải là mã đầu tiên, được đánh máy mạnh và được xác định rõ.
  • Có thể sử dụng lại, Kiến trúc điều khiển mô hình - Lưu ý các dịch vụ của bạn được kế thừa từ một IService miễn phí [của T] cũng có thể được sử dụng lại trong các dịch vụ Hàng đợi tin nhắn.
  • Đa nền tảng - Hỗ trợ cả Windows (.NET)/Linux/OSX (MONO)
  • Hiệu suất - Thời gian chạy phản chiếu miễn phí và chỉ sử dụng nhanh nhất.Các thành phần NET cho tất cả các tính năng của nó
  • Tính lưu trữ - Caching là một phần quan trọng của các dịch vụ có khả năng mở rộng cao, như vậy đôi khi rất quan trọng để kiểm soát bộ đệm của bạn, có thể lưu trữ kết quả tối ưu nhất (ví dụ: phản hồi gzipped) và có variety of caching providers. Xem Northwind example.
+9

và không còn miễn phí nữa ... – Soren

4

Hãy xem trên Nelibur, lợi thế

  • sau Data Transfer Object Pattern
  • dịch vụ web nhỏ và tái sử dụng
  • đầy đủ sức mạnh của WCF
  • nó hoàn toàn miễn phí
Các vấn đề liên quan