• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2420
  • Last Modified:

Limits of IIS?

Hi,

I am working on a web-based solution. Our solution serves different binary files (PDF, DOC, etc.) saved as BLOB in our Oracle server. The user requests for a file, we serve that file by fetching it from the DB and rendering it in the user's browser. Now! the question is:

1) What is the limit of IIS in such a scenario? How many simultaneous users can download files from our site? I guess this will depend on the size of file being served and on some other criteria too maybe, but what is the exact limit? I need a number....

2) How to change that limit? I have explored the IIS Manager but no apparent setting was available. I am using IIS 5.1. Where can I tweak quotas and stuff for my website users?

I will be glad if I can get any guidance in this regard.
Thanks in advance.
0
dosdemon
Asked:
dosdemon
  • 3
  • 3
  • 2
5 Solutions
 
SimonBlakeCommented:
Whoooah, this is a bit of a "how long is a piece of string" question.

2. IIS 5.1 is XP's version of IIS... Here you will be hitting the limits imposed by MS on a desktop connected system, which has specifically set levels of network connections. You can change them by editing the registry from 10 (metabase key MaxConnections for W3SVC) but it is likely that you will hit other OS limits being set and not document about. If its a w2k3 server then it's a whole different kettle of fish.

1. You have answered the question, but it also depends on the size of boxes, router capacity, bandwidth, destination - Any limits you see here are more likely to be on the Oracle driver installation rather than IIS limits, as there is likely to be a limit on the number of connections to your database and the bandwidth between the two. You would be able to get a much higher throughput with the files stored as real files on the web server itself if a re-design is possible. One thing to check in Oracle (on the DB side) is the value in SESSIONS_PER_USER

S.
0
 
dosdemonAuthor Commented:
I agree on the Oracle part. But the question remains intact ... whats the limit? How many users with a 1mb file for instance? ... Must I do the stress test to find that out?

Can you please point out the registry key more clearly.

Thanks.
0
 
SimonBlakeCommented:
In your \Inetpub\Adminscripts folder are a bunch of vbs admin scripts for IIS. From a CMD prompt (having navigated to the dir) issue the following command at the prompt:

cscript adsutil.vbs set w3svc/MaxConnections 40

On IIS 5.1 - 40 is the maximum recommended level before you start hitting other OS limits... Which means 40 people are allowed to download at the same time... This is for a file download however, so I'm not sure what the implications of having the data over a DB connection would be, but I would expect them to be extremely significant and this depends on your DB, network setup and PC power.

S.
0
Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

 
Dave_DietzCommented:
In IIS 5.0 40 connections is a hard limit.  You can try setting the value higher but it is capped at 40 in code.

Additionally, changing this key to 40 is technically in violation of your license agreement for Windows XP and IIS 5.1 - the key is primarily there for testing and some FrontPage issues, not to make XP into a mini-Server.

The size of the files being downloaded make no difference in how many users can concurrently download the file - if the file is a large one it will simply take longer for people to download it.  The number of concurrent users will not change but the total number of downloads per time period will be affected by the file size.

If you move to a server platform (2000 or 2003 Server) then there is no limitation on number of concurrent users and the only real limitation is the TCP/IP stack and how many connections it can maintain.  In this scenario you would be able to support hundreds or thousands of concurrent connections assuming you had sufficient RAM to handle that many open sockets.

Dave Dietz
0
 
dosdemonAuthor Commented:
Fine points, gentlemen. What about Oracle? Is there some limitation imposed by the database system, such as the max number of simultaneous database requests from IIS (from multiple simultaneous users)? We are using 10g. I suppose its designed for heavy usage and wont get bogged down by any number of user request, no matter how larger the blob is being requested (Dave's point). Am I correct in this semi-assumption?

Any further pointers will help me finalize this thread.
Thanks again.

0
 
Dave_DietzCommented:
The limits on Oracle will more likely be related to licensing than anything else.

depending on how you write your web application you might be able to swing it so that all the requests to the DB come in under one userid which could help get around any per user licensing.  You will also want to make sure there is no limit on number of simultaneous connection in the license.

Aside from that as long as you have the hardware to support a busy database system there shouldn't be abny real bottleneck there.

Dave Dietz
0
 
SimonBlakeCommented:
dosdemon,

As I mentioned before, the one you are interested in from an IIS perspective - single user logging in to db - is the limit is set by  SESSIONS_PER_USER (I think this has a max value of around 200 in 9, not sure about 10g tho) in the sys tables, there is also a maximum, number of users connected to the server which Dave pointed out will be down to your purchased license, but this doesn't affect the "session" as it is for unique login id's.

Ps. There is a difference to this if you are using the freebie developer oracle lite version - as this value is overridden to prevent people using the free developer edition as a production system.

S.
0
 
dosdemonAuthor Commented:
Thanks guys for this help, good points.
Bye
0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now