External process type which provides functionality to a CF application. MySQL, Redis, RabbitMQ, Hadoop are examples of services.
Allocation of a service type resource which is shared by instances of one or more CF applications. For example, multiple instances of the same Rails application would share a single MySQL service instance. A Rails web process will share the same MySQL instance with a Rails worker process. When deployed to CF, these web and worker processes will appear as 2 separate applications.
Provides a CF application with connection details to a service instance. Service instance bindings are not shared across applications. Some services (e.g. Redis) share the same connection details across service instance bindings, others (e.g. Cassandra) provide unique details to the same service instance. These are exposed in the application's environment via VCAP_SERVICES environment variable.
Every service instance gets allocated a separate OS process.
Multiple service instances share the same OS process. Authorisation is enforced by the OS process (e.g. MySQL, RabbitMQ etc.).