Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Go Live! Launching your MOSS Publishing site DEV435 Spencer Harbar About the speaker… Spencer Harbar, MVP, MCSD.NET, MCAD, MCSE, APM www.harbar.net Enterprise Architect working with some of Microsoft’s largest customers deploying Office SharePoint Server 2007. 15 years in Enterprise IT ISPA Board Member Agenda ActiveX control dialog Page payload Custom CAS policies Configuring & tuning caching Application page lockdown Server topology & roles IIS HTTP compression Web Application Configuration Name.dll ActiveX control SharePoint utilizes the Name ActiveX control Delivers presence functionality Enabled by default on all OOTB Sites Remove on Internet facing sites override the ProcessDefaultOnLoad() JavaScript function MSKB # 931509 Minimizing Page Payload Page payload combined total size of all files required for a page request Includes all HTML markup, images, JavaScript, CSS, etc… SharePoint heavy page payloads primarily due to table-based design & JavaScript Best Practices: Avoid OOTB Publishing Site and Master Pages Implement CSS-based design (aim for accessible sites) which can dramatically reduce the markup Tune IIS HTTP compression (more later…) Lazy-load core.js - See MSKB # 933823 – Or suppress it all together! Publishing Portal Page Payload k, Other scripts & CSS (59k), 29.4,… k, Branding Branding & Content (91k) & Content (91k), 44.6,… core.js (54k) k, core.js (54k), 26, 26% Other scripts & CSS (59k) EXAMINING THE PUBLISHING PORTAL PAGE PAYLOAD & ACTIVEX CAS Policies for Custom Code SharePoint sites default to WSS_Minimal When creating custom components, developers are presented with two options: Increase trust of Web app (WSS_Medium / Full) Increase trust of specific components w/ CAS policy Increasing the trust of the Web app is easier, BUT custom CAS policy for a specific component is much more secure ITP343 & 344 (This afternoon) DEV369 (Wednesday, 12:30pm) The “Lockdown Feature” By default, all users in a SharePoint site can access the SharePoint-y pages http://www.adventure-works.com/pages/forms/allitems.aspx Not desirable in Publishing sites Controlled by the “View Application Pages” right granted by “Limited Access” SPBasePermissions.ViewFormPages Feature ViewFormPagesLockdown removes this right from Limited Access Automatically activated by Publishing Portal template Note: need to reactivate when changing the anonymous settings on a site collection Page Output Cache Fastest type of caching After ASP.NET 2.0 page lifecycle generates the HTML markup it is saved in RAM Future requests bypass the ASP.NET 2.0 page lifecycle and instead uses cached HTML Publishing sites provide Web interface to create cache “profiles” Profiles assigned to individual sites Note: not enabled by default Disk-Based Cache Commonly requested static files (images, CSS, JS, etc) stored in libraries in the site are pulled from the content database on each request Disk-based cache stores these files on the WFE server’s disk to eliminate future round trips Can optionally configure the max-age HTTP header causing user’s browsers to not request the files for a specified duration Configured via the Web App’s web.config Server Topology & Roles Separate authoring & production environments Use Content Deployment Environment can then be optimized for: read/write (authoring) read only (production) Disable/Stop unused services Excel Calculation, Incoming Email, WSS Search etc Static & Dynamic Compression Used to minimize the page payload When SharePoint installed, IIS is configured to compress static & dynamic files Static: HTM, HTML, TXT Dynamic: ASP, EXE Example: core.js is 257 KB on disk, but IIS compresses to 54 KB before sent to client IIS HTTP compression level is configurable Requires lots of fine tuning and testing Higher compression = higher CPU use & smaller files Lower compression = lower CPU use & larger files Tip: increase as high as the CPU can handle IIS v6 vs. IIS v7 Compression IIS 6 IIS 7 Default Static Comp. 10 7 Default Dynamic Comp. 0 0 Compress by File Type YES NO Compress by MIME Type NO YES Compress content before adding to page output cache NO Configurable In IIS 7, compression (static & dynamic) is on / off & is enabled / disabled based on CPU utilization In IIS 7, markup can be compressed before inserting into page output cache Not enabled by default EXAMINING CACHING, IIS HTTP COMPRESSION & RESULTS Web Application Configuration For Internet-facing sites, it is recommended to disable the following: User Presence Information – Central Admin » App Mgmt » Web App General Settings Blog API – Central Admin » App Mgmt » Web App General Settings Incoming Email – Central Admin » Operations » Incoming E-Mail Settings Disk-Based Caching Enable disk-based caching and set the max-age attribute for local user browser caching Post conference DVD with all slide decks Sponsored by Thank you for attending!