What is a 2-tier architecture?
A two tier application or architecture is a client server application where the processing load can fall either on the server or on the client. When the processing load falls on the client then the server simply acts as a controller between the data and the client. Such a client is called as a fat client and imposes a lot of memory and bandwidth on the clients machine. Thus in this type of architecture the business logic and the presentation layer is located on the client machine and the data layer is on the server machine. This approach poses problems: one being that as the number of clients connecting to the server increases then there will be multiple requests to the server which will be time consuming. Another problem is since all the bulk processing takes place on the client end, then the client machine should have sufficient processing power.
Another approach is that the client is a thin client and the business logic and the data layer are located on the server machine. However this approach also has bottlenecks. If the number of clients connecting to the sever are many then the server will be overloaded and this will make processing each client request very slow.To overcome all these problems one should plan a three their architecture.
