So What is IIS?

  • Forgive my ignorance, but just what is Internet Information Server? How does SQL Server tie into it?

    I went to read up on it, but I find MS has the doc in a book they want to sell.

    Steve



    Steve Miller

  • IIS is Microsoft's web server software. It is not tied into SQL Server in any way, except that many web applications are made up of dynamic scripts that fetch and present data from databases, i.e. SQL Server. Exactly what do you want to know about it?

    --

    Chris Hedgate @ Apptus Technologies (http://www.apptus.se)

    http://www.sql.nu

  • If you use the SQL XML integration to retreive data from a URL, then IIS is the server which receives this request and sends it to SQL.

    Steve Jones

    sjones@sqlservercentral.com

    http://www.sqlservercentral.com/columnists/sjones

  • IIS is the name of the entire Web Server application. SQL can be accessed or thru code can access data from one.

    IIS is comprised of 4 services.

    IISAdmin which is the base administrative funtionallity of which the other 3 depend.

    World Wide Web Service which is the process that servers Web Content (mostly pages) to the web. Within this, it supports various programming enviroments such as pure HTML, ASP (Script based programming environment) and other add of processes such as CGI and a few others. This envrionment is simple to use but rich enough to program most application and business logic in to server customers as web content. You can utilize any data source (including SQL Server) to make the content more dynamic and personal. Two good resources for ASP on the web are http://www.planetsourcecode and http://www.aspindex.com. Also, if you need SQL related help post into the unrelated area questions and someone will generally help.

    FTP Server Services which provides File serving.

    and finally

    SMTP Server Services which is a basic mail processing server primarily used with server pages to give and easy to use email interface for web applications (note: you can get into a lot of trouble with this one).

    "Don't roll your eyes at me. I will tape them in place." (Teacher on Boston Public)

  • Any gottchas with installing IIS on the database server (security concerns). We need it only for FTP. Our is behind a Firewall, on a seperate segment, we need FTP to get feeds that SAP must push to us.

    John Zacharkan


    John Zacharkan

  • I'd vote against. Better to put IIS/FTP elsewhere, then make the folder available to SQL via a share.

    Andy

    http://www.sqlservercentral.com/columnists/awarren/

  • Under no circumstances should you install IIS on the same box as SQL. Even in a development environment it causes problems.

    You can write a web app that crashes IIS and brings down the entire server.

    If you've got a team of developers then there is nothing more annoying than having to say to them "Stop what you're doing I'm rebooting the server......again!". If SQL and IIS are seperate then at least you are isolating your points of failure.

    Also, the raison d'etre of ANY RDMS is its stability. It feels like IIS has a patch virtually every week. A patch implies instability.

    SQL likes RAM. Don't share it unless you absolutely have to.

    The IISRESET command can reboot the server. Do you really want your database server rebooted?

    I'm a bit hazy on the hole firewall/port thing but web servers listens on port 80 for HTTP and 443 for HTTPS. SQL Listens on 1433 by default. If you install both on one box doesn't this mean having more holes in your firewall for one particular machine?

    Sorry for the hysteria, but I feel very strongly on this.

  • I sense some over-reaction to the evils of IIS - but I think the advice is sound on this occasion. With IIS you do need to monitor patches constantly, and if you aren't experienced with IIS you might end up opening a lot more ports than you intend. Also it's famous for memory leaks (although I have never experienced this).

    If all you want is an FTP server then just install dedicated FTP servng software.

    I can't recommend a package from experience so I won't but there are plenty (www.tucows.com for example) and it should be cheap.

    If you just need to recieve files from a known machine(s), you can then open up one port (21 is standard but not mandatory) to the IP address of the machine pushing the files at you.

  • quote:


    I'm a bit hazy on the hole firewall/port thing but web servers listens on port 80 for HTTP and 443 for HTTPS. SQL Listens on 1433 by default. If you install both on one box doesn't this mean having more holes in your firewall for one particular machine?


    Unless you have clients that need to talk directly to SQL then no. The Web server can talk fine to itself at all points.

    I would suggest avoiding putting ISS and SQL on the same box for the fact SQL loves Memory and other resources and you ultimately degrade potential perofrmanc eby utilizing resources.

    Other than that it is an entirely personal choice.

  • I use a number of Web Content Management Systems and have seen horrendous memory leak problems in some of them.

    There are one or two that use an ISAPI filter in order to intercept calls to the WebServer. These are memory hogs and can therefore cause problems with joint IIS/SQL installations.

    Others run batch processes over night in order to publish content. There is a very good reason that they have been designed to run over-night. Yes - memory requirements and traffic!

    I believe that there is a memory leak problem if you use the standard Netscape implementation of server side Javascript. A known bug is the /g option of the replace command.

    If you are writing a very simple ASP based site then you will probably get away with a joint IIS/SQL installation for a while. The issue is that successful sites grow both in size and complexity so todays stable site becomes tomorrows electronic psychopath.

    Given the cost of hardware it is penny wise and pound foolish to install both IIS and SQL on one box.

  • I concur with the majority recommendation here and only suggest putting IIS on the same box for one reason: long enough to get a server-side certificate installed for SSL. Then get IIS back off the box. If you aren't running under AD with an Enterprise CA, then going through IIS is the most straight-forward manner to get the certificate in place.

    Out of curiousity, what's stopping you from creating a virtual directory on another IIS box that points to a shared directory on the SQL Server system? You can create a virtual directory that points to a UNC path. This would mean an extra hop, yes, but would get around needing to put IIS on the same box as SQL Server.

    K. Brian Kelley

    http://www.truthsolutions.com/

    Author: Start to Finish Guide to SQL Server Performance Monitoring

    http://www.netimpress.com/shop/product.asp?ProductID=NI-SQL1

    K. Brian Kelley
    @kbriankelley

  • Brian,

    Forgive my ignorance, but what do you put an SSL certificate on a SQL box for?

  • SQL Server 2000 supports the use of SSL to encrypt the data stream. If you are not in an Active Directory domain with an Enterprise CA or if you need to provide secure communications with say a partner business, SSL can encrypt the data stream. The key is that the server and the client both have to trust the Root CA that issued the certificate. So if you're talking B2B, you're probably talking about obtaining a normal server certificate from the likes of Verisign or another well-known provider. In that case, you are going to have to use IIS to create the certificate request and install the certificate.

    K. Brian Kelley

    http://www.truthsolutions.com/

    Author: Start to Finish Guide to SQL Server Performance Monitoring

    http://www.netimpress.com/shop/product.asp?ProductID=NI-SQL1

    K. Brian Kelley
    @kbriankelley

  • I am playing devils advocate, but I need a better convincing argument. Personally I think IIS should never be on the same server regardless of whether you are using it or not.

    But can you not install it and disable everything but FTP ?? Is it safe then?

    John Zacharkan


    John Zacharkan

  • I agree. I don't typically run IIS/SQL Server except on my workstations that I use for development/testing. However there I know the performance hit, security concerns, etc. I certainly don't recommend the two coupled in production unless there is no way around it.

    • If you only need FTP, you can choose not to install WWW and SMTP
    • If you already have an FTP service (IIS-based) running on another system, you can create a virtual directory on that system and point it to a UNC path on the SQL Server
    • If you do install IIS to get a certificate for SSL, once the certificate is installed you can uninstall IIS

    K. Brian Kelley

    http://www.truthsolutions.com/

    Author: Start to Finish Guide to SQL Server Performance Monitoring

    http://www.netimpress.com/shop/product.asp?ProductID=NI-SQL1

    K. Brian Kelley
    @kbriankelley

Viewing 15 posts - 1 through 15 (of 24 total)

You must be logged in to reply to this topic. Login to reply