2011-08-21 12 views
7

Có khả năng có giao dịch trên nhiều hệ thống không?Xử lý giao dịch ứng dụng nhiều tầng

Đối exeample:

lớp 1 - cho thấy các dịch vụ web (dàn quân ở WebLogic) lớp 2 - kết thúc trước NET (triển khai để IIS)

có thể, chúng tôi đã giao dịch cam kết hoặc rollback cho dịch vụ web nhiều cuộc gọi bắt đầu từ .NET?

Nếu có, ai đó có thể chỉ cho tôi bất kỳ tài nguyên hoặc tài liệu nào không? Và có bất kỳ yêu cầu đặc biệt nào cho mỗi lớp tuân thủ các giao dịch không?

Trả lời

1

Có, điều đó là có thể. WCF cho phép tiêu thụ các dịch vụ web sử dụng tiêu chuẩn WS-Atomic Transaction, giả sử bạn có System.Transactions.TransactionScope có sẵn trong máy khách .NET của bạn (ví dụ: Silverlight, không có điều này).

Có một xuất sắc example on CodeProject hiển thị cả cách tạo và sử dụng dịch vụ web giao dịch bằng .NET bằng cách sử dụng TransactionScope.

0

casperOne's mention of TransactionScope là giải pháp tuyệt vời nếu nó có sẵn trong kịch bản của bạn. Tôi đã rơi vào tình yêu với sự đơn giản và sức mạnh nó mang đến cho cái bàn.

Tuy nhiên, tôi lưu ý rằng bạn có thẻ Java và đề cập đến Weblogic là tầng dịch vụ web, vì vậy TransactionScopeRequired property sẽ phải được triển khai thông qua giao thức phiên dịch tương tự WS-AT (Giao dịch nguyên tử web) hoặc giao thức phiên mã tương tự.

Xem ở đây: http://publib.boulder.ibm.com/infocenter/wsdoc400/v6r0/index.jsp?topic=/com.ibm.websphere.iseries.doc/info/ae/ae/cjta_wstran.html

0

của nó chắc chắn có thể, nhưng có thể chứng minh được chim ưng hơn bạn nghĩ. Bạn cần điều khiển để sửa đổi môi trường thực thi của các dịch vụ web đó để tăng thêm chúng để chúng có thể tiêu thụ các tiêu đề WS-AT. Ngoài ra, với bất kỳ môi trường giao dịch phân tán nào, bạn có thể sẽ phải tăng hiệu suất vì chi phí hành chính đáng kể.

SOA-WORLD có một số bài viết tuyệt vời giải thích các giao dịch dịch vụ Web và tất cả các tiêu chuẩn OASIS liên quan. Đây là một trên WS-Coordination nếu tôi có thể tìm phần còn lại, tôi sẽ thêm chúng.

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