EJB được xây dựng trên RMI. Cả hai đều ngụ ý các máy khách Java và các bean. Nếu khách hàng của bạn cần phải được viết bằng thứ gì đó khác (ví dụ: .NET, PHP, v.v.), hãy sử dụng các dịch vụ web hoặc một dịch vụ web khác có giao thức dây không dây, như HTTP hoặc XML qua HTTP hoặc SOAP.
Nếu bạn chọn RMI, bạn không cần máy chủ ứng dụng Java EE EJB. Bạn phải giữ các JVM máy khách và máy chủ đồng bộ; bạn không thể nâng cấp máy khách mà không nâng cấp máy chủ. Bạn phải viết tất cả các dịch vụ mà máy chủ ứng dụng EJB cung cấp cho bạn (ví dụ: kết nối tổng hợp, đặt tên và dịch vụ thư mục, tổng hợp, yêu cầu xếp hàng, giao dịch, v.v.).
RMI là cấp độ khá thấp khi bạn nghĩ về nó. Tại sao bạn lại bỏ tất cả các con đường trở lại CORBA?
Lựa chọn tốt hơn là EJB 3.0 so với Mùa xuân. Nó phụ thuộc vào việc bạn có thích phát triển POJO hay không, muốn có một sự lựa chọn công nghệ quan hệ bên cạnh ORM và JPA, trong số những thứ khác.
Bạn có thể thanh toán cho máy chủ ứng dụng Java EE (ví dụ: WebLogic, WebSphere) hoặc sử dụng một nguồn mở (JBOSS, Glassfish và OpenEJB và ActiveMQ) hoặc bạn có thể gắn bó với Spring và triển khai trên Tomcat, Jetty, Resin hoặc bất kỳ động cơ servlet/JSP nào khác.
Xuân cung cấp rất nhiều lựa chọn bằng cách công nghệ thuyết bất khả tri: kiên trì (Hibernate, iBatis, JDBC, JDO, JPA, TopLink), Remoting (HTTP, Hessian, vải bố, RMI, SOAP web service) vv
EJB 3.0 là thông số kỹ thuật với nhiều nhà cung cấp; Mùa xuân chỉ có thể có từ Spring Source.
Tôi muốn giới thiệu Spring. Nó rất chắc chắn, có rất nhiều lực kéo, không đi đâu cả. Nó để lại tất cả các tùy chọn của bạn mở.
dịch vụ Web là tuyệt vời về mặt lý thuyết, nhưng có một số gotchas mà bạn cần phải xem ra cho:
- trễ. Định luật đầu tiên của Fowler về các đối tượng phân tán: "Đừng!" Một kiến trúc bao gồm rất nhiều dịch vụ SOAP được phân bổ chi tiết sẽ thanh lịch, đẹp và chậm như mật đường. Hãy suy nghĩ cẩn thận trước khi phân phối.
- Marshalling từ XML đến các đối tượng và ngược lại tiêu thụ chu kỳ CPU không cung cấp bất kỳ giá trị kinh doanh nào ngoài việc cho phép khách hàng của bạn nói một giao thức nền tảng bất khả tri.
- SOAP là một tiêu chuẩn ngày càng trở nên cồng kềnh và phức tạp hơn, nhưng nó có rất nhiều công cụ hỗ trợ. Các nhà cung cấp như vậy vì nó giúp thúc đẩy doanh số bán hàng của ESBs. REST rất đơn giản nhưng không được hiểu rõ. Nó không được hỗ trợ bởi các công cụ.
Mô-đun dịch vụ web của Spring rất tốt, nhưng hãy cẩn thận khi chọn triển khai theo cách này. Viết về giao diện dịch vụ POJO. Những điều này sẽ cho phép bạn có được sự tách biệt về khái niệm mà bạn muốn, trì hoãn lựa chọn triển khai cho đến giây phút cuối cùng và cho phép bạn thay đổi ý định nếu suy nghĩ đầu tiên không hoạt động tốt.
Tôi đồng ý với duffymo. Mùa xuân là cách để đi ... –
Dịch vụ web mùa xuân? Mùa xuân là một từ lớn để tìm kiếm. :-) –
Đã chỉnh sửa để thêm siêu liên kết: http://www.springsource.org/ – duffymo