MIDDLEWARE
 A software that connects software components or applications.It have a set of services   that  allows multiple processes running on one or more machines to interact.It is integral  to modern technology based on XML,SOAP,web services and service  oriented architecture.  
A typical example is the TCP/IP tack for telecommunications,nowadays included virtually in every operating system.
Types of Middleware
It is based on scalibility and recoverablity.
1.Remote procedure call:
         Client makes calls to procedures running on remote systems.It can be synchronous or asynchronous. 
2.Message oriented middleware:
             Messages sent to the client are collected and stored until they are acted upon , while the client continue with other processing .
3.Object request broker:
             It makes possible for applications to send to send objects and requests services in an aobect oriented system.
4. SQL oriented data access:
              Middleware between between applications and database servers.  
5.Embedded middleware:
         Communication services and integration interface software or firmware that operates between embedded applications and the real time OS.
6.Transaction processing monitors:
          Provides tools and environment to develop and deploy distributed applications.
7.Application servers:
           Software installed on computer to facilitate the running of other applications.
8.Enterprise service bus:
            An abstraction layers on top of an enterprise messaging system. 









