IIS & XMLHTTP

Discussion in 'ASP General' started by Brian Staff, Jul 1, 2003.

  1. Brian Staff

    Brian Staff Guest

    I was recently on a OO Design course<g> and as a result I've decided to
    "Tier" my ASP classic pages for maintainability.

    Browser <----> PT <---> BT <---> DT
    PT == Presentation Tier
    BT == Business Tier
    DT == Data Tier

    Right now, the browser communicates with just one ASP page and it's a fairly
    simple job to divide each one into 3 separate ASP pages with each new page
    doing the work of one tier and communicating with the other tiers using
    XMLHTTP (I'm using Msxml2.ServerXMLHTTP in non-async mode) and returning XML
    to the calling tier.

    I'm a small web site, so right now, all of my tiers will exist on just one
    box. While I can get it to work, I've found that XMLHTTP communication
    between pages on the same box does not work unless you use different Virtual
    Directories for each tier _and_ you set them to different "Application
    Protection" - high, medium and low. If you don't do this, the web server
    "hangs" as MS so correctly states in point 2 of
    http://support.microsoft.com/?id=290591

    The only solutions I see here is to either have separate boxes for each tier
    or manage the protection for each Virtual Directory - both of which I can't
    do, because the servers are not mine.

    Does anybody have any suggestions on how to solve this problem, as it seems
    to be a fundamental weakness in IIS. I'm guessing that large sites have the
    luxury of separating the tiers onto distinct boxes, but what do other
    small/medium sites do, that want to maintain "tier" code?

    BTW - it does not seem to matter whether the type of protection is higher or
    lower for the calling page to the called page - it just needs to be
    different - is that understanding correct?

    Brian Staff
     
    Brian Staff, Jul 1, 2003
    #1
    1. Advertisements

  2. Brian Staff

    Ken Schaefer Guest

    Your data tier should probably be your database.
    Your business tier would be either a COM component or web classes
    Your presentation tier would be your .ASP page

    That's how I've typically see these types of things divided up.

    You may additionally choose to have a data access layer (DAL) which all your
    middle tier code goes through to speak to the underlying data source.

    Cheers
    Ken

    : I was recently on a OO Design course<g> and as a result I've decided to
    : "Tier" my ASP classic pages for maintainability.
    :
    : Browser <----> PT <---> BT <---> DT
    : PT == Presentation Tier
    : BT == Business Tier
    : DT == Data Tier
    :
    : Right now, the browser communicates with just one ASP page and it's a
    fairly
    : simple job to divide each one into 3 separate ASP pages with each new page
    : doing the work of one tier and communicating with the other tiers using
    : XMLHTTP (I'm using Msxml2.ServerXMLHTTP in non-async mode) and returning
    XML
    : to the calling tier.
    :
    : I'm a small web site, so right now, all of my tiers will exist on just one
    : box. While I can get it to work, I've found that XMLHTTP communication
    : between pages on the same box does not work unless you use different
    Virtual
    : Directories for each tier _and_ you set them to different "Application
    : Protection" - high, medium and low. If you don't do this, the web server
    : "hangs" as MS so correctly states in point 2 of
    : http://support.microsoft.com/?id=290591
    :
    : The only solutions I see here is to either have separate boxes for each
    tier
    : or manage the protection for each Virtual Directory - both of which I
    can't
    : do, because the servers are not mine.
    :
    : Does anybody have any suggestions on how to solve this problem, as it
    seems
    : to be a fundamental weakness in IIS. I'm guessing that large sites have
    the
    : luxury of separating the tiers onto distinct boxes, but what do other
    : small/medium sites do, that want to maintain "tier" code?
    :
    : BTW - it does not seem to matter whether the type of protection is higher
    or
    : lower for the calling page to the called page - it just needs to be
    : different - is that understanding correct?
    :
    : Brian Staff
     
    Ken Schaefer, Jul 1, 2003
    #2
    1. Advertisements

  3. Brian Staff

    Brian Staff Guest

    Ken,

    Ah! so COM eliminates the "IIS threading" problem. I do understand that the
    tiers can be programmed in any language at all, but I'm quite content doing
    it all in ASP.

    I do have it working on my test machine using ASP for all 3 tiers, with
    separate Virtual Directories using different protection. I just want to know
    if I can get around the need for different protection on each VD.

    Brian
     
    Brian Staff, Jul 1, 2003
    #3
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.