Fabric3 supports two deployment topologies: a single-VM domain where a runtime runs operates in isolation and a distributed domain where a controller manages one or more participant runtimesruntimes operate in unison as part of a domain. For an overview, see The Domain.
...
In addition to single-host deployments, a single-VM configuration can be used to run a shared-nothing Fabric3 cluster.
Distributed Domains
A distributed domain consists of a controller process that receives contributions and is responsible for propagating them to participants that host services and process requests:
Participants are Fabric3 supports two distributed domain topologies: peer-to-peer node-based and controller-based. The recommended topology for the Fabric3 standalone server and Tomcat host is the node-based configuration. When run in other host environments such as WebLogic, Fabric3 will use the controller-based topology.
The node topology is zero-configuration: as runtimes are booted they will auto-discover and converge in the domain. Nodes are partitioned into zones which are homogenous clusters. That is, each runtime in a zone has the same configuration and hosts replicas of the same services. Note that a controller is not a single point of failure since it is only needed to deploy a new contribution. Once a contribution has been propagated to an initial participant, new participant runtimes can be instantiated and they will contact a peer for the services they are to run. This makes it possible to shutdown a controller after a deployment and only requires the controller to be reactivated when a new deployment is requiredStarting a node runtime is simple - configure its domain name and zone as described below and execute: java -jar server.jar node
.
Configuring the Runtime Mode
...
Code Block | ||
---|---|---|
| ||
<config> <runtime mode="controllernode"/> </config> |
Valid values are: vm,
node, participant,
and controller
.
...