Introduction
BigBank demonstrates a complete distributed, multi-cluster loan processing application. BigBank is organized into several architectural tiers:
- A loan service responsible that receives and processes loan applications over multiple transports, including Web Services (WS-*), REST/HTTP, and file-system messages.
- A back-end rating system responsible for performing credit checks and application scoring.
- A database for persisting loan application data.
- Client applications that remotely connect to the loan service and submit applications.
BigBank can be deployed to the single-VM runtime used for the starter examples or to the cluster topology that is configured under servers/cluster
. In either case, application configuration remains the same.
Getting Setup
To build and deploy BigBank to the single-VM server, do the following.
1. Build the BigBank source
To build BigBank, go to apps/bigbank/bigbank-loan
and execute: mvn clean install_
.
The build will produce the bigbank-loan-<version>.jar archive containing the loan services.
2. Start the server
Build the single-VM Fabric3 runtime in /servers/vm
by executing:
mvn clean install
When the build has completed, boot the Fabric3 runtime from the server/vm/image/bin
directory by executing:
java -jar server.jar
Alternatively, the server can be started by providing the path to the seerver.jar archive relative to the current directory. e.g.:
java -jar target/image/bin/server.jar
3. Deploy the archives
Copy bigbank-loan-<version>.jar
to the severs/vm/target/image/runtimes/vm/deploy
directory.
Note that in a production system, it is recommended to use the Fabric3 administration client, which is separately downloadable.
4. Run the clients
From your IDE, launch one of the client located in bigbank-client src/main/java/org/fabric3/samples/bigbank/client
. The client will submit a loan application an wait for it to be processed.
The next section explains the BigBank application architecture in detail.