Re: Confused about ASP, "sessions", and queuing of multiple requests
From: Ohaya (Ohaya_at_NO_SPAM.cox.net)
Date: 02/24/04
- Next message: Ted Brewster: "Re: ASP hangs Win2003 IIS 6 IISState"
- Previous message: Jeff Cochran: "Re: multiple ip's mapping to one domain"
- In reply to: Sylvain Lafontaine: "Re: Confused about ASP, "sessions", and queuing of multiple requests"
- Next in thread: Sylvain Lafontaine: "Re: Confused about ASP, "sessions", and queuing of multiple requests"
- Reply: Sylvain Lafontaine: "Re: Confused about ASP, "sessions", and queuing of multiple requests"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 24 Feb 2004 10:50:58 -0500
Sylvain,
Thank you for this valuable information!!
After testing most of last night, I, too, am coming to the conclusion that
this "ASP queues requests" is normal behavior with IIS and ASP.
I'm thinking that the one system that we think is not queuing requests
actually is. I'm going to the test lab today to try a test this time with
Perfmon running as I did last night.
FYI, re. your comments, that system doesn't go through any proxies, and the
Device Manager shows "ACPI Multiproc", so I think it was installed with
multiprocessor support from the beginning. I'm not sure if cookies are
disabled.
Thanks again!
Jim
"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)>
wrote in message news:ezL9$mu%23DHA.3816@TK2MSFTNGP09.phx.gbl...
> Multiple requests to the same session will be executed consecutively, this
> is by design and it's a necessity in case global variables (either stored
> inside or outside the session) are to be accessed by both requests. The
> fact that you have or not such access to shared variables is not relevant
to
> IIS, as it cannot see "in the future" what the code in your pages will do.
>
> You can have what you want by using "sessionless" page; add the following
> statement at the beginning of your pages:
>
> %@LANGUAGE="VBSCRIPT" ENABLESESSIONSTATE="False" %
>
> However, you won't have access to session variables, like
Session("MyItem")
> = myValue, with this. You can override this restriction by storing your
> values elsewhere, like in a SQL-Server or in a QueryString.
>
> The IIS which is giving you parallelism is probably set to use sessionless
> by default or have its cookies disabled by some proxy. For the setting, I
> cannot give you more information as I don't have access to a IIS5 or 6
right
> now.
>
> It is also that what you are seeing is some artifact, like activating
> Hyperthreading or adding a second CPU after the Windows as been installed.
> When you add a second CPU, you must remake a full installation of Windows
or
> use Sysprep to correctly activates it. With HT, I don't know if Sysprep
is
> sufficient.
>
> It is also possible that some other process, like access to a SQL-Server,
is
> doing what you are seeing.
>
> S. L.
>
>
> . What are you are seeing as paral
> "Ohaya" <Ohaya@NO_SPAM.cox.net> wrote in message
> news:erwV63r%23DHA.2316@tk2msftngp13.phx.gbl...
> > Hi All,
> >
> > I think that I've made some progress, but I'm not quite sure if it's
> > backwards or forwards :(!
> >
> > I tried testing with the keepalive (in IIS Manager) for the website
> > disabled/unchecked. With keepalive on the website disabled, I am seeing
> > consistently that when I start IE, then go to my test page, ASP is
> *ALWAYS*
> > not queuing. I then re-enabled keepalive on the website, and ASP
queuing
> > went back to being inconsistent again.
> >
> > Disabling keepalive might be ok, but I also found that if I tried to go
to
> > the test page again after the 1st try, ASP would queue the requests :(.
> >
> > Seems like I can't win :(...
> >
> > Any other suggestions??
> >
> >
> >
> > "Ohaya" <Ohaya@NO_SPAM.cox.net> wrote in message
> > news:uopADcr%23DHA.4060@TK2MSFTNGP10.phx.gbl...
> > > Ken,
> > >
> > > Thanks. I think that I understood that scenario (two IE instances),
but
> > if
> > > I just run one IE instance and load a HTML page with, say, 2 IMG tags,
> > e.g.:
> > >
> > > <IMG SRC="/test.asp">
> > > <IMG SRC="/test1.asp">
> > >
> > > and I watch Performance Monitor "Requests Executing" and "Requests
> > Queued",
> > > I am seeing that sometimes the requests get queued (I can see
"Requests
> > > Queued" increment, then decrement), and sometimes they don't get
queued.
> > I
> > > haven't been able to discern a pattern to this on my test system at
> home.
> > > I've tried things like clearing the IE cache, setting IE to load pages
> > every
> > > time, etc., to no avail.
> > >
> > > I'm really puzzled about why ASP is queuing requests sometime, and not
> > > others on my system. If I could figure that out definitively, maybe
> it'd
> > > give a hint about why I'm seeing queuing on 2 other systems, but not
on
> > one
> > > other one :(...
> > >
> > > Jim
> > >
> > >
> > >
> > >
> > > "Ken Schaefer" <kenREMOVE@THISadOpenStatic.com> wrote in message
> > > news:OEAjcxp%23DHA.3828@TK2MSFTNGP10.phx.gbl...
> > > > If you start a new instance of IE, then it does not share any
> in-memory
> > > > cookies (include ASP session state cookie) with the first IE
instance.
> > As
> > > > far as IIS is concerned, this is two separate ASP sessions. That is
> why
> > > you
> > > > are probably seeing parallel processing.
> > > >
> > > > Cheers
> > > > Ken
> > > >
> > > > "Ohaya" <Ohaya@NO_SPAM.cox.net> wrote in message
> > > > news:ezBHIqp%23DHA.3500@tk2msftngp13.phx.gbl...
> > > > : Sylvain,
> > > > :
> > > > : BTW, I forgot to mention:
> > > > :
> > > > : If I run my Waitfor test with 2 different instances of IE (on same
> > > > machine,
> > > > : but 2nd IE started from Start, not using Ctrl-N) simultaneously, I
> see
> > > > : Requests Executing in Perfmon as 2, i.e., in this situation, IIS
> *IS*
> > > > : apparently processing both requests simultaneously/in parallel.
> > > > :
> > > > : Like I said, I'm confused about what is different (specifically)
> > between
> > > > the
> > > > : above test, and generating multiple HTTP requests from a single IE
> > > > : instance...
> > > > :
> > > > :
> > > > :
> > > > : "Ohaya" <Ohaya@NO_SPAM.cox.net> wrote in message
> > > > : news:OiJzRkp%23DHA.2520@TK2MSFTNGP11.phx.gbl...
> > > > : > Sylvain,
> > > > : >
> > > > : > Thanks for responding...
> > > > : >
> > > > : > Re. Waitfor, I just installed it for the test I described.
> > > > : >
> > > > : > Sorry if I'm being obtuse. I think I understand that one IE
> > instance
> > > > can
> > > > : > generate multiple HTTP requests into IIS, e.g., in the instances
> > that
> > > > you
> > > > : > described. In our case, I think your example of setting an IMG
> SRC
> > to
> > > > an
> > > > : > ASP is exactly what we have, with multiple of these IMGs on one
> > page.
> > > > : >
> > > > : > But, I guess I'm still unclear about when IIS/ASP will or will
not
> > > > handle
> > > > : > these multiple requests in a "queuing" fashion vs. not in a
> queuing
> > > > : fashion.
> > > > : >
> > > > : > What exactly determines this? As I mentioned, the posts I've
seen
> > > > vaguely
> > > > : > mention "in the same session", without clearly defining what
they
> > mean
> > > > by
> > > > : a
> > > > : > "session".
> > > > : >
> > > > : > Actually, the reason that I'm chasing all of this around is that
> we
> > > are
> > > > : > running IIS on a multiprocessor server. With the IE client
firing
> > > > : multiple
> > > > : > requests to IIS, we thought that the multiple requests from IE
> would
> > > be
> > > > : > spread across the multiple processors.
> > > > : >
> > > > : > But on our production server, instead, for a given user
operation
> at
> > > the
> > > > : > IE/client end, which, again, creates several HTTP requests to
IIS,
> > > we're
> > > > : > seeing CPU activity on 1 CPU, then the next CPU, then the next
> CPU,
> > > > etc.,
> > > > : > until the user operation is complete.
> > > > : >
> > > > : > The conclusion we're coming to is that for some reason ASP on
the
> > > > : production
> > > > : > server is not handling the multiple requests "in parallel", but
> > rather
> > > > : > queuing the requests (we see the parallel processing on a
> different
> > > > : > multiprocessor server that we use for testing, but not on the
> > > production
> > > > : > machine).
> > > > : >
> > > > : > We just cannot figure out what is different between these 2
> machines
> > > > that
> > > > : > would cause queuing the requests in one case, but not in the
> other.
> > > > : >
> > > > : > Thanks,
> > > > : > Jim
> > > > : >
> > > > : > "Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam
> > > please)>
> > > > : > wrote in message news:O7nX9Np%23DHA.688@tk2msftngp13.phx.gbl...
> > > > : > > That's true since IIS 3.0 and there are occasions when you
don't
> > > need
> > > > to
> > > > : > > make quick refresh to see it in action.
> > > > : > >
> > > > : > > For example, this is necessary when the IE is making
> simultaneous
> > > > : requests
> > > > : > > to the IIS. Exemple of this are when you are dividing your
page
> > > using
> > > > : > > Frameset: each frame contains one HTML page as its source.
> > > Refreshing
> > > > a
> > > > : > > frameset then require to ask the server for more than one HTML
> > page.
> > > > : > >
> > > > : > > Another example is when the source of an objet is an ASP page,
> > like
> > > > : this:
> > > > : > >
> > > > : > > <img src="get_the_image.asp">
> > > > : > >
> > > > : > > The use of Javascript and of other advanced facilities for
> > > requesting
> > > > : data
> > > > : > > from one or more ASP pages also rise the possibilities of
having
> > > > : multiple
> > > > : > > simultaneous requests to the web server. It is clear from
those
> > > > example
> > > > : > > that the server cannot run these requests in parallele because
> of
> > > the
> > > > : > > possibility that the codes inside theses pages can make
> > > contradictory
> > > > : > > changes to Session variables, global variables and/or other
> > objects,
> > > > : like
> > > > : > > backend requests to a SQL-Server. This should clear any
> confusion
> > > > into
> > > > : > your
> > > > : > > mind.
> > > > : > >
> > > > : > > By the way, using things like WaitFor and others objets for
> timing
> > > in
> > > > : ASP
> > > > : > > can result in a severe degradation of performance from the IIS
> and
> > > > their
> > > > : > > usages must be reserved to the cases when they are strictly
> > > necessary.
> > > > : > >
> > > > : > > S. L.
> > > > : > >
> > > > : > > "Ohaya" <Ohaya@NO_SPAM.cox.net> wrote in message
> > > > : > > news:u0nrjZo%23DHA.552@TK2MSFTNGP11.phx.gbl...
> > > > : > > > Hi,
> > > > : > > >
> > > > : > > > I'm trying to understand a situation where ASP seems to be
> > > > "blocking"
> > > > : of
> > > > : > > > "queuing" requests. This is on a Win2K Advanced Server,
with
> > > IIS5.
> > > > : > > >
> > > > : > > > I've seen some posts (e.g.,
> > > > : > > >
> > > > : > >
> > > > : >
> > > > :
> > > >
> > >
> >
>
http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&selm=Tidy7IDbDHA.2108%40cpmsftngxa06.phx.gbl)
> > > > : > > > that indicate that ASP will queue up requests when they come
> in
> > > with
> > > > : the
> > > > : > > > same "session".
> > > > : > > >
> > > > : > > > My first question is "Can someone confirm that this is
true?"
> > (see
> > > > : > below).
> > > > : > > >
> > > > : > > > My second is regarding what "same session" means in this
> > context?
> > > > : > > >
> > > > : > > > Several of the posts that I've seen with respect to this
> queuing
> > > > just
> > > > : > say
> > > > : > > > "session", but I've also seen some posts that say "ASP
> session",
> > > and
> > > > : > which
> > > > : > > > specifically mention "the ASP Session object". This latter
> > > > reference
> > > > : > > ("ASP
> > > > : > > > Session object") is more precise, but my testing (again, see
> > > below)
> > > > : > seems
> > > > : > > to
> > > > : > > > indicate that this interpretation of "session" is not "ASP
> > Session
> > > > : > > object".
> > > > : > > >
> > > > : > > > Here's the test that tried:
> > > > : > > >
> > > > : > > > 1) I installed the Waitfor from ServerObjects
> > > > : > > > (http://www.serverobjects.com/products.htm), and created a
> small
> > > > : > > "text.txt"
> > > > : > > > file in c:\.
> > > > : > > >
> > > > : > > > 2) I put Waitfor.asp in my website.
> > > > : > > >
> > > > : > > > 3) I ran Performance Monitor and added the "Requests Queued"
> > > counter
> > > > : > > >
> > > > : > > > 4) Using IE, I went to http://myserver/waitfor.asp
> > > > : > > >
> > > > : > > > 5) Once it connected, I started clicking the IE Refresh
button
> > > > : > > >
> > > > : > > >
> > > > : > > > As I clicked the IE Refresh button, I could see the
"Requests
> > > > Queued"
> > > > : > > > counter climb in Performance Monitor.
> > > > : > > >
> > > > : > > > The above test SEEM to at least indicate that ASP will
> *INDEED*
> > > only
> > > > : > > process
> > > > : > > > a single request from IE, i.e., that ASP *IS* queuing, but
I'm
> > > still
> > > > : > > > confused about under what circumstances this queuing will
> happen
> > > > (what
> > > > : > > does
> > > > : > > > "session" mean in this context?).
> > > > : > > >
> > > > : > > > Can someone clarify this?
> > > > : > > >
> > > > : > > > Thanks, and apologies for both the cross-post and somewhat
> long
> > > > : post...
> > > > : > > >
> > > > : > > >
> > > > : > >
> > > > : > >
> > > > : >
> > > > : >
> > > > :
> > > > :
> > > >
> > > >
> > >
> > >
> >
> >
>
>
- Next message: Ted Brewster: "Re: ASP hangs Win2003 IIS 6 IISState"
- Previous message: Jeff Cochran: "Re: multiple ip's mapping to one domain"
- In reply to: Sylvain Lafontaine: "Re: Confused about ASP, "sessions", and queuing of multiple requests"
- Next in thread: Sylvain Lafontaine: "Re: Confused about ASP, "sessions", and queuing of multiple requests"
- Reply: Sylvain Lafontaine: "Re: Confused about ASP, "sessions", and queuing of multiple requests"
- Messages sorted by: [ date ] [ thread ]