Penguin
Annotated edit history of MiddleWare version 3, including all changes. View license author blame.
Rev Author # Line
1 CraigBox 1 Ogres are like onions.
2
3 AristotlePagaltzis 3 Middleware is EnterpriseSpeak. If you picture interaction with an application consisting of
1 CraigBox 4
3 AristotlePagaltzis 5 # the bit you interact with,
6 # the bit that does the thinking, and
7 # the bit that stores the information
1 CraigBox 8
9 then you have the standard three-layer enterprise software model.
10
3 AristotlePagaltzis 11 The bit you interact with is normally a WebPage, or in some cases, a dumb [Terminal|TerminalEmulator]. It doesn't really do any thinking, or more importantly, any data validation. You tell it that you were born in 1765, and it happily believes you and passes this information off to the next layer in the cake (or was it an onion?).
1 CraigBox 12
3 AristotlePagaltzis 13 Middleware is the buzzword for that next part. It includes WebServer~s, application servers, ContentManagementSystem~s, all that stuff. You hear the term "business logic" bandied around: this is implemented in this layer of the model. It is the part that includes the rule "you can't possibly have been born in 1765", and then refuses to update the information store, and hands an error back up to the top layer.
1 CraigBox 14
15 The third layer, the information store, is usually a DataBase.
16
3 AristotlePagaltzis 17 To confuse things, it's possible to have part of your business logic be kept in your database by way of things like cursors, which are nothing at all to do with the flashing bar. It really does make you want to stick your head in an ogre.
1 CraigBox 18
19 See also:
20
21 * WikiPedia:Middleware