Two tier versus three tier architectures
Two tier versus three tier architectures, continued…
Originally Published Mon Aug 25 11:02:52 2008
Posted from www.limsexpert.com:
In the early days of personal computing the graphical user interface was all that you, a single user, needed to interface with the software application that sat resident in the memory of your physical machine.
The need to reconceptualize software became prevalent as computing progressed and networking became the norm. Clusters of machines connected via some form of networking apparatus forever changed the way we do businesses. With networking, a single computer could be virtualized such that a request for data was responded to by any number of remote computers.
Thanks to cheap and easy access to networking, single systems graduated into two tier systems and then evolved into three tier systems. The differences between these systems is important if you are going to build, buy, or understand a LIMS.
The standalone computing system is obvious in its function. Everything is localized to a physical disk or other media attached to the computer. The common belief is that this sort of system is outdated, or that they no longer exist. Not so. A standalone computing system has and will continue to exist in some form indefinitely. Today we have various standalone types of computing systems, and in some cases even a networked system will cache data locally once it finds the network to be unavailable. Perhaps the most prevalent and popular standalone computing systems exist in the handheld market where software is downloaded onto a handheld device and storage is maintained locally on flash memory. Your high-end barcode scanners work this way.
The two tier system is one in which the application and the database are typically separated on two different machines. Since database servers can maintain multiple simultaneous user connections while preserving ACID rules, two-tier was a logical progression from the stand alone system. Two tier system are really just enhanced standalone systems — they offer the added feature of being able to share data among different users and groups.
Two tier systems are not necessarily bad or wrong. They are simply no longer the defacto choice in system development. If we go back to looking at handheld devices we see a mixture of the standalone system and the two-tier type being used today. Mobile phones, for instance, log into a central database server to download messages sent by friends. This is a two tier system. The client device logs into a database and uses its internal logic to locate the information that it needs to do work. Due to the memory constraints or other limitations of the handheld device, this is a perfectly acceptable scenario.
We enter the realm of the three tier system when we want to make changes to a system’s behavior without having to push new clients to a great many client machines. Three tier systems offer the user a graphical interface on a local machine, the business logic or “smarts” of the application reside on a remote server, and the database which houses all the data exists on yet a third server.
Why do this? It lowers the cost of deployment. When the business logic of your application requires revision, there is no need to schedule lengthy redeployments or to suffer outages. When there is a need to increase the charges related to performing a particular test for Client X, the users will see the change almost immediately (and so will the database). This is different from two tier, where you may have to install the latest version of the application to apply the change.
As you might have guessed, three tier systems tend to be slightly more expensive than two-tier. The first cost increase involves the extra physical server. Server equipment doesn’t come cheap. The second cost involves network bandwidth. More communication between the middle tier increases the network usage.
In summary, buying or building the right system for your laboratory will involve making some kind of decision regarding which architecture will fit your budget and needs. As a rule of thumb, more tiers means more money. Two tier systems are alive and well but can be a pain to enhance. Lots of users and high growth business environments will start to experience the types of strains that justify looking primarily at three tier systems.
License Information
Unless specifically listed otherwise, all content on this site is protected under the following license:

This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License.






