Introduction to Platform Symphony

The Platform Symphony ("Symphony") software is leading enterprise-class software that distributes and virtualizes compute-intensive application services and processes across existing heterogeneous IT resources creating a shared, scalable, and fault-tolerant infrastructure, delivering faster, more reliable application performance while reducing cost.

Symphony provides an application framework that allows you to run distributed or parallel applications in a scaled-out grid environment.

Cluster

A cluster is a logical grouping of hosts that provides a distributed environment in which to run applications.

Symphony

Symphony manages the resources and the workload in the cluster. Using Symphony, resources are virtualized: Symphony dynamically and flexibly assigns resources, provisioning them and making them available for applications to use.

Symphony can assign resources to an application on demand when the work is submitted, or assignment can be predetermined and preconfigured.

Application

A Symphony service-oriented application uses a client/service architecture. It consists of two programs: the client, which provides the client logic to submit work, retrieve and process results, and the service, which comprises the business logic (the computation). The service-oriented application uses parallel processing to accelerate computations.

Symphony receives requests to run applications from a client. Symphony manages the scheduling and running of the work—the client need not be concerned with where the application runs.

Client

The client sends compute requests and collects results using the Symphony client APIs. The client may run on a machine that is part of the cluster, or it may run on a machine that is outside of the cluster.

The client can use a service without knowledge of what programming language was used to create the service.

The client submits an input data request to Symphony. Symphony initiates the service that processes the client requests, receives results from the service, and passes the results back to the client.

Service

The service is a self-contained business function that accepts requests from a client, performs a computation, and returns responses to the client.

The service uses computing resources, and must be deployed to the cluster. Multiple instances of a service can run concurrently in the cluster.

The service is initiated and run by Symphony, upon receipt of a client request. The service runs on a machine that is part of the Symphony cluster. The service runs on the cluster resources dynamically provisioned by Symphony. Symphony monitors the running of the service, and passes the results back to the client.

Related concepts
EGO component overview
SOA Middleware components