Tôi đã nghe nói về NServiceBus , nhưng tôi chưa thực sự hiểu nó là gì. Họ tự xưng là "Xe buýt dịch vụ nguồn mở phổ biến nhất cho .net".
Vì thế; "Xe buýt dịch vụ" là gì, và khi nào tôi cần một chiếc?
Tôi đã nghe nói về NServiceBus , nhưng tôi chưa thực sự hiểu nó là gì. Họ tự xưng là "Xe buýt dịch vụ nguồn mở phổ biến nhất cho .net".
Vì thế; "Xe buýt dịch vụ" là gì, và khi nào tôi cần một chiếc?
Câu trả lời:
Bạn có thể coi bus dịch vụ là Ethernet của SOA.
Đầu tiên và quan trọng nhất, nó giới thiệu một ngôn ngữ xác định mọi thứ, chẳng hạn như địa chỉ IP trong Ethernet. Cái tên này vốn dĩ không phải là một thứ vật chất.
Tiếp theo, bạn có một cái gì đó liên quan đến vật lý trên mỗi nút, chẳng hạn như hàng đợi trong trường hợp xe buýt để hỗ trợ giao tiếp bán kết nối hoặc thẻ Ethernet trong phép ẩn dụ.
Ngoài phần vật lý, còn có phần "giao thức" của giao tiếp, như ngăn xếp OSI cho Ethernet. Với bus, đây là thư viện khách được sử dụng bởi mã ứng dụng.
Cuối cùng, bạn có thể xem một bus dịch vụ cung cấp mức trừu tượng cao hơn tiếp theo để xây dựng hệ thống phân tán. Bạn cũng có thể sử dụng nó cho giao tiếp máy khách-máy chủ để cung cấp cho bạn khả năng nhắn tin một chiều lâu dài cũng như để máy chủ đẩy thông báo trở lại máy khách.
Cụ thể, bạn sẽ thấy NServiceBus khá nhẹ và dễ sử dụng sau khi bạn sử dụng công nghệ xếp hàng - sự lựa chọn của bạn gồm RabbitMQ, MSMQ, Bảng SQL thông thường, Amazon SQS, Azure Storage Queues và Azure Service Bus.
Kiểm tra bài viết trên Wikipedia về Xe buýt Dịch vụ Doanh nghiệp .
Một Service Bus hoạt động như một lớp trừu tượng khác trong nhiệm vụ không bao giờ kết thúc để triển khai một Kiến trúc Hướng Dịch vụ tốt. Service Bus có thể xử lý một số công việc nặng nề được thấy đằng sau một Kiến trúc Hướng Dịch vụ tốt như Nhắn tin, Định tuyến và Phối hợp Dịch vụ.
Nếu bạn không chắc tại sao bạn lại muốn bất cứ thứ gì như vậy, tôi khuyên bạn nên đọc về những gì tạo nên một Kiến trúc hướng dịch vụ tốt. Cuốn sách đã thực sự mở mang tầm mắt của tôi và chứng minh sự khác biệt giữa việc chỉ có Dịch vụ Web và có Kiến trúc hướng dịch vụ thực sự là Kiến trúc hướng dịch vụ: Khái niệm, Công nghệ và Thiết kế của Thomas Erl
Thuật ngữ này được giới thiệu cùng với SOA , theo cách thức kế thừa (như từ buzz) của EAI .
Khi bạn cần nó? Đó là một câu hỏi hay. Nó đi kèm với rất nhiều phức tạp.
Quy tắc ngón tay cái có thể được thực hiện nếu nó giải quyết được nhiều vấn đề hơn nó gây ra.
Nghiêm túc nếu bạn có một môi trường không đồng nhất và muốn sắp xếp các ứng dụng (khác nhau) (sử dụng công nghệ khác nhau) với các quy trình kinh doanh. Sau đó, có thể hữu ích khi sử dụng BPEL (nhưng điều này gây ra các vấn đề do di chuyển) để dàn dựng và biên đạo
CHỈNH SỬA: Những gì không có trên wikipedia, là thực tế: Một ESB có thể thích ứng bằng cách sử dụng các trình kết nối đặc biệt, các ứng dụng đầu cuối cũ để sử dụng với Corba hoặc Java Enterprise có nghĩa là khả năng tương tác. Hạn chế là hơn 100 'Tiêu chuẩn' xung quanh SOAP sẽ không hợp tác nếu không có nỗ lực rất lớn.
Bạn chắc chắn cần nó nếu bạn phải kết nối các hệ thống CNTT trong vòng sáu tháng sau khi hợp nhất 2 công ty đảm bảo lớn.