N-Tier Question From Interview - BSD

This is a discussion on N-Tier Question From Interview - BSD ; had a interview for a it position and was asked what my understanding of a N-Tier Environment and my work experience working in that environment. I think I answered the question well but just wondering how you would answer that ...

+ Reply to Thread
Results 1 to 2 of 2

Thread: N-Tier Question From Interview

  1. N-Tier Question From Interview

    had a interview for a it position and was asked what my understanding
    of a N-Tier Environment and my work experience working in that
    environment. I think I answered the question well but just wondering
    how you would answer that question based on your experience?

  2. Re: N-Tier Question From Interview

    plexter wrote:

    > had a interview for a it position and was asked what my understanding
    > of a N-Tier Environment and my work experience working in that
    > environment. I think I answered the question well but just wondering
    > how you would answer that question based on your experience?


    An n-Tier is a collection of multiple layers of a "loosely coupled" stack
    where different layers perform different functions and hand the result up
    or down to the next layer.

    Typically today it is used as a reference to modern day dynamic Web site
    serving. The usual model is a web server such as Apache, lighttpd, IIS, etc
    as a front end that the surfer will see. In the middle (hence often
    called "middleware") will be some script or coding based engine such as
    PHP, Java, ASP.Net, etc. The "middleware" is usually responsible for
    determining the content to be returned based on some user input or
    calculation. This middle layer (also called "business logic") usually
    retrieves whatever data it needs in order to satisfy the request from a
    database server layer where the data is actually stored.

    This is the simplest "normalized" model, but it can contain other layers
    besides just the three mentioned above. There can be XMLRPC, SOAP, and
    other layers talking to and retrieving information from multiple sources.

    An example of loose coupling is where all the SQL would reside on the
    database server in the form of stored procedures rather than hard coded
    into the "middleware". Need to change a table name? Make a change to a
    stored procedure and all the middleware procedures will use the new table
    without having to have their codebase altered.

    Nowadays things such as Ruby on Rails and Django are becoming popular, but
    they still function with an n-Tiered design paradigm. Clusters of back end
    database servers feed clusters of fastcgi which feed web server front ends.
    Even though "middleware" layers are different (Ruby and Python) the overall
    n-Tier structure is still present.

    You may also find this of interest:

    http://en.wikipedia.org/wiki/Model-view-controller

    Hope that helps with your question. :-)

    -Jason


+ Reply to Thread