The Result Data Newsletter   
Volume 803 - March 2008   
© Copyright 2008 Result Data Consulting, Ltd.  614-505-0770  www.resultdata.com   

    Result Data Home Page  |  Newsletter Archive  |  Upcoming Events  |  Classes & Workshops  |  Request Information
Upcoming Events:  Microsoft SQL Server User Group: 3/28, Mid Ohio BusinessObjects User Group: 5/7

Return to Newsletter Contents...

 

The SharePoint Stack

by: Michael Mull, Consultant, MCAD, CRCP, MCTS

An astute young man recently asked why SharePoint always was slow loading in the morning. He explained that every morning when he arrived at the office the first task he would do after his computer booted up was to check his SharePoint site. Every morning it would take a long time for the site to load, but only for the first time. The rest of the time he did not experience any delay. Why?

For the answer to this problem, we must look at the SharePoint stack. You must always keep in mind that SharePoint is part of a stack of programs and technologies. The first layer of this stack is obviously the server’s operating system. In the case of SharePoint this is going to be Windows Server 2003 (W2K3). The second layer is Internet Information Services (IIS). IIS version 6.0 is a component of W2K3 – that means it is distributed with the operating system software and is free. It is not installed by default but can be easily added at any time. (Microsoft Windows Server 2008 will be released with IIS 7.0.)

ASP.Net 2.0 is a technology which depends on IIS. After IIS is loaded, it can be “extended” to use ASP.Net 2.0. The ‘2.0’ in ASP.Net 2.0 refers to the .Net Framework 2.0. However, because WSS uses workflow, the .Net Framework 3.0 must be installed. IIS itself does not depended on the .Net Framework and can operate quite well without it. However, ASP.Net is a product of the framework. So from SharePoint’s point of view the .Net Framework is part of its stack. This of course complicates drawing diagrams to illustrate the stack of products SharePoint depends on.

Finally, since SharePoint stores its content in SQL Server, the system must have SQL Server 2000 or 2005 available.

To implement SharePoint we then install Windows SharePoint Services 3.0 (WSS), which can be the top of the stack or we can also install Microsoft SharePoint Server 2007. Below is a diagram illustrating these product relations. SQL Server is not included since it is usually installed on a separate machine.

Pic 1

IIS is server software. Its purpose is to ‘serve’ web pages to the client. An http request for a web page comes in over the network and IIS processes the request and sends it back to the requesting client. There is a lot of work and complexity which is hidden in the previous sentence under the description ‘processes the request’ which we are not going to dive into. IIS is powerful enough to host multiple web sites. On the same machine you can easily host the web site for a grocery store, a wildlife conservation group and a site devoted to a candidate for the school board. Each of these sites can be totally independent of each other and not even be aware of the other sites’ existence.

To isolate the web sites IIS uses application pools. An application pool has a dedicated portion of memory which no other application pool can access. Each web site is assigned to an application pool. If a web site crashes, its problems will not affect any web site which is running in another application pool. As an example we can look at SharePoint. The SharePoint Central Administration application is assigned to its own application pool. This way if a problem develops with a SharePoint site, the administrator can still access the administration site and make changes which might solve the problem.  

The application pool is a segregated part of memory. Within that memory space, the server runs worker processes. The worker process is what executes the code. In order to enhance performance and maintain security, work processes are usually terminated at specified time intervals. Most IIS installations will have worker processes shut down after a certain period of inactivity. This means that during the night when no one is accessing the SharePoint sites, IIS will shutdown all the worker processes in the SharePoint application pool.

If a worker process is not running when IIS receives a request for a web page, IIS must first create one. This takes a small amount of time. The delay the young man was experiencing every morning was the startup time for a new worker process. He did not experience this delay during the rest of the day because the process would not be idle for a sufficient period of time to prompt IIS to shut it down.

I explained all this to the young man, but what I really wanted to say was “Well, SharePoint is pregnant with information, so it suffers from morning sickness,”

Go to Top  |  Return to Newsletter Contents

The Result Data Newsletter is published approximately once a month to share the latest information on business intelligence, data management and CRM. There should be a link below to allow you to change or remove yourself from our list. We take your requests very seriously. If you have any difficulty please contact us at 614-505-0770 and we will make sure that your request is handled properly. This is not intended to be an unsolicited message and you can reach us in person if needed.

© Copyright 2007 Result Data Consulting, Ltd. - All Rights Reserved
All trademarks and copyrights are the property of their respective owners. This information is provided without warranty.
Announcements
Save Big $$ On Gas This Spring
Schedule and attend any one of our qualifying public training classes from April through June 30th to receive up to $385 in gas cards OR  receive 10% off the normal class price.  Please contact our office for further details on promotion amounts and qualifying classes.   Restrictions apply and you must mention the promotional code Gas08 at the time of registration to receive the promotion.  Call 614-505-0770 for further details and restrictions.
Microsoft SQL Server User Group
Join us for the Spring Microsoft SQL Server User Group meeting on March 28th. Our main presentation will be by Luis Gonzalez of Microsoft demonstrating and discussing the new and exciting features in SQL Server 2008.  Call 614-505-0770 or click here for more information and to reserve your seat.
Louisville BI Seminar - Optimizing Company Performance Though Better BI
See how solutions from Business Objects can help organizations seeking to improve operational efficiency, sales effectiveness or financial performance.  This event will be held on April 24, 2008 at the Louisville Marriott East.  Call 614-505-0770 or click here for more information and to reserve your seat.
Mid Ohio BusinessObjects User Group
Join us for the Spring MOBOUG User Group meeting on May 7th. Call 614-505-0770 or click here for more information and to reserve your seat.
Looking for a Few Good Men and Women
Join our award winning team of Business Intelligence consultants and .Net Software developers.
Send your resume and salary requirements to:
jobs@resultdata.com