170 likes | 308 Views
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
E N D
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!
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 • 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
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
Thank you for attending! Post conference DVD with all slide decks Sponsored by