Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current Restore this Version View Page History

« Previous Version 19 Current »

Fabric3 is a platform for building distributed applications and integrating loosely coupled systems. Perhaps the best way to describe Fabric3 is to contrast it with other middleware technologies: 

  • Unlike Java EE app servers, Fabric3 is designed to enable service-based as opposed to autonomous (and often monolithic) applications. Fabric3 is used to assemble applications from loosely-coupled distributed services.
  • Dependency injection frameworks such as Spring and Guice assemble local application components; Fabric3 extends assembly from local to distributed services.
  • Unlike Enterprise Service Buses (ESB), Fabric3 is not based on a proprietary programming and integration model that sends all communication through a routing and transformation framework. Instead, Fabric3 relies on standards such as OASIS SCA and JAX-RS and open protocols such as ZeroMQ to wire application components directly without the complexity and overhead of an intermediary.
  • Fabric3 does not compete with messaging middleware (MOM), but uses it for remote communication between services.
  • Fabric3 does not replace web services but can be used to expose RESTful (JAX-RS) resources and WS-* endpoints to external clients.
  • Fabric3 supports polyglot communications including JMS, ZeroMQ and file-based transports. Fabric3 can also be extended to support additional protocols and transports.

Key Concepts

The following sections explain key concepts used when designing, deploying and maintaining applications with Fabric3..