• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Devaka Cooray
  • Tim Cooke
Sheriffs:
  • Rob Spoor
  • Liutauras Vilda
  • paul wheaton
Saloon Keepers:
  • Tim Holloway
  • Tim Moores
  • Mikalai Zaikin
  • Carey Brown
  • Piet Souris
Bartenders:
  • Stephan van Hulst

Difference between 3 tiers and n tiers??

 
Ranch Hand
Posts: 384
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello,
Can anyone tell me what the difference is between 3 tier and n tier please? What do the 1, 2, 3 and n tiers correspond to?
Thanks in advance,
Julien Martin.
 
Ranch Hand
Posts: 30
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello Julien

tiers have been introduced in order to splitt the logic according their concerns. In practise we have tiers like presentation, business logic, integration and data access or data storage.

This splitting is individual according to the needs. So there is no exact written defined rule how many tier a system must have. This means one systems has 2 tiers another 4 tiers or to keep it generic n-tiers.

Best practise has shown that the application code should be organized into presentation, application logic (business logic) and data access. This improves the not only the maintenance, also the extensibility as the reusage of the logic components could be easier realized.

Today not only more the logic alone should be packaged regarding this also the whole systems are going to be distributed according their concerns. This means you have server(s) for presentation, server(s) for the business logic and server(s) for the data access. Of course one or more tier could consist on a single server. The decision how many presentation servers or application servers etc. are needed depends on the service level requirements i.e.performance , response time etc.

n-tier means you can have as many tiers as you like. Some architects design security or integration of external systems in separate layers. This is depending how big and different your requirments are. i.e. If you have to connect to different external systems like IIOP, HTTP, SOAP, MOM etc. then it would make sense to design a seperate tier for this.

So I hope I could explain your question.

regards
Mark
 
Julien Martin
Ranch Hand
Posts: 384
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello Mark,
Thanks a lot for your detailed reply! Can you please confirm that 3 tiers means:
Tier one: web browser
Tier two: app server
Tier three: database
I am right?
Thanks in advance,
Julien.
 
Ranch Hand
Posts: 36
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Julien,

Tier one: web browser
Tier two: app server
Tier three: database

is roughly correct, but client can not be part of any Tier. So following is probably better -

Tier one: Presentation layer - eg HTML/JSPs
Tier two: Business Logic - eg Beans / Classes
Tier three: database
 
Julien Martin
Ranch Hand
Posts: 384
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello Kailas and thanks for your reply!
There seems to be a contradiction in what experts mean as three-tier:
Have a look at that:
http://www.webopedia.com/TERM/T/three_tier.html
and that:
http://searchdatabase.techtarget.com/sDefinition/0,,sid13_gci211500,00.html
The second document accords with what you are saying whereas the first one accords to what I thought was the three-tier architecture (user computer==browser==first tier).
Any thoughts?
Julien.
 
Ranch Hand
Posts: 1183
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Julien,

Sun says the following:

Although a J2EE application can consist of the three or four tiers shown in Figure 1-1, J2EE multitiered applications are generally considered to be three-tiered applications because they are distributed over three locations: client machines, the J2EE server machine, and the database or legacy machines at the back end. Three-tiered applications that run in this way extend the standard two-tiered client and server model by placing a multithreaded application server between the client application and back-end storage.



http://java.sun.com/j2ee/1.4/docs/tutorial/doc/Overview2.html#wp81104

Regards,
Dan
 
Kailas Lovlekar
Ranch Hand
Posts: 36
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hmmm... That is bit confusing. and I thought I knew what 3 tier means !
Sun's quote seems more convincing.
 
Is that a spider in your hair? Here, threaten it with this tiny ad:
Gift giving made easy with the permaculture playing cards
https://coderanch.com/t/777758/Gift-giving-easy-permaculture-playing
reply
    Bookmark Topic Watch Topic
  • New Topic