A mainframe is a computer that is specialized in high throughput and transactional computation. That is to say, either the transaction succeeds and is committed, or it fails and is disregarded. There are classes of computation where this form of computing is required, for example, credit card transactions require that all-or-nothing computing transaction.
These computers are large, taking up several server cabinets all interwired, and they have thousands of processors and fiber optic wires – but not for computation, but just for moving data and organizing it for the CPU, to keep the actual central processor(s) saturated. Moving data from this side of the machine to that side of the machine takes time, and a whole lot of effort ($$$) is put in to keeping the data flowing as fast as it can. Any waiting for data to arrive is a failure.
These machines drive the most mission critical computing in the world, the most important transactions, the most important databases, etc. If you had to choose only one kind of computer were allowed to exist, civilization is built upon these machines.
A server is any computer that provides a service. That is, a request for a service comes in, and the computer responds. A web server is a kind of server. There are servers that issue IP addresses, and servers that map URLs to IP addresses… But while dedicated server computers are designed to handle high workloads and have high(er) reliability – not like your desktop (because $$$), they aren’t transactional in nature, they’re still just running programs, much like your desktop.
Size (specs) and money.
For ex., a 10 year old Dell PC with a Quad core Athelon 64 loaded with linux will live its days as a server collecting dust under a desk or in some closet. A webserver, mailserver, firewall, proxy server.., it doesn’t matter. But it will always be a personal computer.
A mainframe is big, beautifully ugly and lives in a cabinet large enough to sleep in. You would have spent so much for it that you’d pay someone to come in once a weak to dust everything.
A server is any computer that handles requests for something over some form of network. A mainframe is a system designed to handle large amounts of requests.
Most mainframes are a server of some type, but not all servers are mainframes (capable of handling large amounts of requests). A mainframe is, in essence, a more powerful server designed to handle large loads. A server on the other hand, can be a regular desktop computer that shares files with others (which would be a simple file server).
If a server is a car capable of transporting goods from one place to another, a mainframe is a semi-truck designed to carry much larger amounts of goods from one place to another.
Latest Answers