EJB、RMI、XMLRPC、Hessian、Thrift 、Protobuf

Java中實現分佈式的方式有:EJB、RMI、XMLRPC、Web Service、Hessian、Thrift 、Protobuf、NIO(Netty、Mina)安全

EJB

優點:可擴展性好,安全性強,支持分佈式事務處理。網絡

劣勢:不能跨語言;配置相對複雜,不一樣J2EE容器之間很難作無縫遷移併發

RMI

優點:面向對象的遠程服務模型;基於TCP協議上的服務,執行速度快。框架

劣勢:不能跨語言;每一個遠程對象都要綁定端口,不易維護;不支持分佈式事務JTA,RMI框架對於安全性、事務、可擴展性的支持很是有限。分佈式

Web Service

優點:跨語言、跨平臺,SOA思想的實現;安全性高;能夠用來兼容legacy系統的功能高併發

劣勢:性能相對差,不支持兩階段事務性能

Hessian

優點:使用簡單,速度快;跨語言,跨平臺;能夠用來兼容legacy系統的功能。對象

劣勢:安全性的支持不夠強,不支持兩階段事務事務

NIO(Mina/Netty)

優勢:基於TCP通訊,效率上高於HTTP的方式,非阻塞IO應對高併發綽綽有餘。根據具體的須要制定數據傳輸的格式,可擴展性強。效率

缺點:不能跨語言,沒法穿透防火牆。

Protobuf

單純的序列化反序列化庫;

ICE和Thrift

不只包括序列化反序列化功能,仍是RPC框架

ICE的功能更完備,若是說Thrift是網絡框架,那麼ICE就是解決方案。

相關文章
相關標籤/搜索