Middleware often falls into a hidden world within computer systems.
It includes a broad category of software that connects front-end
systems with the back-end. Often the boundaries between back-end
and middleware or front-end and middleware are blurred.
One example of a middleware system includes authentication servers that
need to be able to handle large numbers of transactions on behalf of other
applications that need to authenticate users. These server programs are
often developed in C++ and employ techniques such as
multi-threading, network programming, IPC
mechanisms and special purpose resource management. With this
type of system, in addition to needing a robust system, you also need the
system to return responses quickly and the system needs to be easy to
administer.
Another example of middleware infrastructure is servers that manage
network connectivity. Gethos developed a Linux based dial-on-demand
solution for use in office parks. In addition to providing network
connectivity to the users within the office park, the system also
handled all e-mail traffic (incoming via POP and outgoing via SMTP)
and provided domain name caching.