SlideShare a Scribd company logo
Optimizing public
facing SharePoint sites
Gunnar Peipman
IIS/ASP.NET MVP
http://weblogs.asp.net/gunnarpeipman/
me@gunnarpeipman.com
About me
 Name: Gunnar Peipman
 From: Tallinn, Estonia
 MVP: ASP.NET MVP for 4
years
 Job: developer, architect
and consultant
 Community: ENETA,
speaker, blogger
 Hobbies: new technology,
heavy metal, beers,
national cuisines, travelling
 Happy boyfriend, father,
step father and owner of
funny white rabbit 
Agenda
 Characteristics of public facing sites
 Why SharePoint Publishing Infrastructure?
 Caching files
 Output cache
 Using CDN-s
Session objectives
After this session you should understand:
 performance problems of public facing
sites
 how caching works in SharePoint
 how to plan and configure caching
 how to measure cache
Characteristics
 Accessible by anonymous users
 Harder to estimate server load
 Mostly one-way communication
(this is what MS thinks)
 Different needs (design, SEO)
 Different publishing process
SharePoint Publishing Infrastructure
 Targeted to public web sites and corporate
in-house portals
 Perfect fit for corporate information
publishing
 Publishing workflows
 Different optimization options
Caching files
Request to page
 Every file reference
means new request
 Most files are kept in
SharePoint libraries
 Professional design
means hundreds of
files
 Plus dynamically
loaded files
Same time in server...
What is BLOB cache?
 Files from doc libraries are cached to
front-end servers
 Perfect fit if per page load many requests
are made to server
 Perfect fit also for large files
 Support for e-tags
 You save:
◦ Some database connections and queries
◦ Loading files to database server memory
◦ Moving files from db server to web server
◦ Some traffic
How to optimize
 Keep blobs on separate physical disk
 Every front-end server must have its own
blobs folder or disk
 If disk crashes or you delete files from
blob cache you must reset blob cache
 Blob cache may slow down your site for a
moment when files are copied to disk
 When measuring start from second
request
Output cache
Caching pages
 Built on ASP.NET caching
 Output cache is served from memory
 Possible to define cache profiles
 Profiles can be assigned to page layouts
 Code-based policies
 Possible to define non-cached areas
(called also donut hole caching)
Don’t over-cache!
Again: Output cache uses server memory!
 Morning:
 Noon:
 Afternoon:
 Evening:
How to measure cache?
 Use ASP.NET and SharePoint performance
counters
 Make sure counters are not updated too
often – it puts markable load on server
 Measuring must be long enough to see
how cache is actually used
 No app-pool recycle or iisreset
 If ~85% of requests are served from
cache you are okay
Output cache
Data from real-life scenario
About measuring process
 Performance counters on production
 Interval 15 seconds
 Counters:
◦ Total number of objects added
◦ Total object discards
◦ Cache hit count
◦ Cache hit ratio
 Duration: 12h (work hours fully covered)
 No interruptions
Results
Content Delivery
Networks (CDN)
CDN servers
Using CDN-s
 Files are hosted on other servers
 Users get files from closest servers
 Many popular JS libs are available in
Google and MS CDN servers
 You can build your own CDN using
Windows Azure services
 Point of trouble: wider internet outage
Q&A
Thank you!

More Related Content

What's hot

Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Paul Hunt
 
Introduction To Microsoft SharePoint 2013
Introduction To Microsoft SharePoint 2013Introduction To Microsoft SharePoint 2013
Introduction To Microsoft SharePoint 2013
Vishal Pawar
 
Quick start guide to java script frameworks for sharepoint apps spsbe-2015
Quick start guide to java script frameworks for sharepoint apps spsbe-2015Quick start guide to java script frameworks for sharepoint apps spsbe-2015
Quick start guide to java script frameworks for sharepoint apps spsbe-2015
Sonja Madsen
 
Exploring the New Search in SharePoint 2013 - What can you do now?
Exploring the New Search in SharePoint 2013 - What can you do now?Exploring the New Search in SharePoint 2013 - What can you do now?
Exploring the New Search in SharePoint 2013 - What can you do now?
Benjamin Niaulin
 
SharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End UsersSharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End Users
Mark Stokes
 
10 Quick Wins - No Code
10 Quick Wins - No Code10 Quick Wins - No Code
10 Quick Wins - No Code
Joshua Haebets
 
Building a SharePoint Platform That Scales
Building a SharePoint Platform That ScalesBuilding a SharePoint Platform That Scales
Building a SharePoint Platform That Scales
Scott Hoag
 
What's new in SharePoint 2013 - Discover it
What's new in SharePoint 2013 - Discover itWhat's new in SharePoint 2013 - Discover it
What's new in SharePoint 2013 - Discover it
Benjamin Niaulin
 
SharePoint 2010 - User Profile Store
SharePoint 2010 - User Profile Store SharePoint 2010 - User Profile Store
SharePoint 2010 - User Profile Store
Joshua Haebets
 
Best Practices to SharePoint Physical and Information Architecture
Best Practices to SharePoint Physical and Information ArchitectureBest Practices to SharePoint Physical and Information Architecture
Best Practices to SharePoint Physical and Information Architecture
Joel Oleson
 
Image Slider with SharePoint 2013 Search Results Web Part
Image Slider with SharePoint 2013 Search Results Web PartImage Slider with SharePoint 2013 Search Results Web Part
Image Slider with SharePoint 2013 Search Results Web Part
GSoft
 
Sharepoint Document Management System (DMS) Features
Sharepoint Document Management System (DMS) Features Sharepoint Document Management System (DMS) Features
Sharepoint Document Management System (DMS) Features
Nitin Gupta
 
Build Killer Visuals with SharePoint 2013 Search & Display Templates
Build Killer Visuals with SharePoint 2013 Search & Display TemplatesBuild Killer Visuals with SharePoint 2013 Search & Display Templates
Build Killer Visuals with SharePoint 2013 Search & Display Templates
Benjamin Niaulin
 
Understanding SharePoint site structure what's inside
Understanding SharePoint site structure  what's insideUnderstanding SharePoint site structure  what's inside
Understanding SharePoint site structure what's inside
Benjamin Niaulin
 
Understand the SharePoint Basics
Understand the SharePoint BasicsUnderstand the SharePoint Basics
Understand the SharePoint Basics
Benjamin Niaulin
 
Discover SharePoint 2013
Discover SharePoint 2013Discover SharePoint 2013
Discover SharePoint 2013
Benjamin Niaulin
 
Rotating Banner in SharePoint with a DataView Webpart
Rotating Banner in SharePoint with a DataView WebpartRotating Banner in SharePoint with a DataView Webpart
Rotating Banner in SharePoint with a DataView Webpart
Echo Schmidt
 
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Nik Patel
 
Becoming a SharePoint Design Ninja
Becoming a SharePoint Design NinjaBecoming a SharePoint Design Ninja
Becoming a SharePoint Design Ninja
Kanwal Khipple
 
SharePoint Branding Guidance @ SharePoint Saturday Redmond
SharePoint Branding Guidance @ SharePoint Saturday RedmondSharePoint Branding Guidance @ SharePoint Saturday Redmond
SharePoint Branding Guidance @ SharePoint Saturday Redmond
Kanwal Khipple
 

What's hot (20)

Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
Creating an FAQ for end users, An evolution of an idea - SharePoint Saturday ...
 
Introduction To Microsoft SharePoint 2013
Introduction To Microsoft SharePoint 2013Introduction To Microsoft SharePoint 2013
Introduction To Microsoft SharePoint 2013
 
Quick start guide to java script frameworks for sharepoint apps spsbe-2015
Quick start guide to java script frameworks for sharepoint apps spsbe-2015Quick start guide to java script frameworks for sharepoint apps spsbe-2015
Quick start guide to java script frameworks for sharepoint apps spsbe-2015
 
Exploring the New Search in SharePoint 2013 - What can you do now?
Exploring the New Search in SharePoint 2013 - What can you do now?Exploring the New Search in SharePoint 2013 - What can you do now?
Exploring the New Search in SharePoint 2013 - What can you do now?
 
SharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End UsersSharePoint 2013 Search - Whats new for End Users
SharePoint 2013 Search - Whats new for End Users
 
10 Quick Wins - No Code
10 Quick Wins - No Code10 Quick Wins - No Code
10 Quick Wins - No Code
 
Building a SharePoint Platform That Scales
Building a SharePoint Platform That ScalesBuilding a SharePoint Platform That Scales
Building a SharePoint Platform That Scales
 
What's new in SharePoint 2013 - Discover it
What's new in SharePoint 2013 - Discover itWhat's new in SharePoint 2013 - Discover it
What's new in SharePoint 2013 - Discover it
 
SharePoint 2010 - User Profile Store
SharePoint 2010 - User Profile Store SharePoint 2010 - User Profile Store
SharePoint 2010 - User Profile Store
 
Best Practices to SharePoint Physical and Information Architecture
Best Practices to SharePoint Physical and Information ArchitectureBest Practices to SharePoint Physical and Information Architecture
Best Practices to SharePoint Physical and Information Architecture
 
Image Slider with SharePoint 2013 Search Results Web Part
Image Slider with SharePoint 2013 Search Results Web PartImage Slider with SharePoint 2013 Search Results Web Part
Image Slider with SharePoint 2013 Search Results Web Part
 
Sharepoint Document Management System (DMS) Features
Sharepoint Document Management System (DMS) Features Sharepoint Document Management System (DMS) Features
Sharepoint Document Management System (DMS) Features
 
Build Killer Visuals with SharePoint 2013 Search & Display Templates
Build Killer Visuals with SharePoint 2013 Search & Display TemplatesBuild Killer Visuals with SharePoint 2013 Search & Display Templates
Build Killer Visuals with SharePoint 2013 Search & Display Templates
 
Understanding SharePoint site structure what's inside
Understanding SharePoint site structure  what's insideUnderstanding SharePoint site structure  what's inside
Understanding SharePoint site structure what's inside
 
Understand the SharePoint Basics
Understand the SharePoint BasicsUnderstand the SharePoint Basics
Understand the SharePoint Basics
 
Discover SharePoint 2013
Discover SharePoint 2013Discover SharePoint 2013
Discover SharePoint 2013
 
Rotating Banner in SharePoint with a DataView Webpart
Rotating Banner in SharePoint with a DataView WebpartRotating Banner in SharePoint with a DataView Webpart
Rotating Banner in SharePoint with a DataView Webpart
 
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
 
Becoming a SharePoint Design Ninja
Becoming a SharePoint Design NinjaBecoming a SharePoint Design Ninja
Becoming a SharePoint Design Ninja
 
SharePoint Branding Guidance @ SharePoint Saturday Redmond
SharePoint Branding Guidance @ SharePoint Saturday RedmondSharePoint Branding Guidance @ SharePoint Saturday Redmond
SharePoint Branding Guidance @ SharePoint Saturday Redmond
 

Similar to Optimizing public facing SharePoint sites

SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike WatsonSharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
Joel Oleson
 
Black Friday and Cyber Monday- Best Practices for Your E-Commerce Database
Black Friday and Cyber Monday- Best Practices for Your E-Commerce DatabaseBlack Friday and Cyber Monday- Best Practices for Your E-Commerce Database
Black Friday and Cyber Monday- Best Practices for Your E-Commerce Database
Tim Vaillancourt
 
Establishing Environment Best Practices T12 Brendan Law
Establishing Environment Best Practices T12 Brendan LawEstablishing Environment Best Practices T12 Brendan Law
Establishing Environment Best Practices T12 Brendan Law
Flamer
 
Learn from my Mistakes - Building Better Solutions in SPFx
Learn from my  Mistakes - Building Better Solutions in SPFxLearn from my  Mistakes - Building Better Solutions in SPFx
Learn from my Mistakes - Building Better Solutions in SPFx
Thomas Daly
 
SPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst PracticesSPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst Practices
Scott Hoag
 
CI_CONF 2012: Scaling - Chris Miller
CI_CONF 2012: Scaling - Chris MillerCI_CONF 2012: Scaling - Chris Miller
CI_CONF 2012: Scaling - Chris Miller
The Huffington Post Tech Team
 
CI_CONF 2012: Scaling
CI_CONF 2012: ScalingCI_CONF 2012: Scaling
CI_CONF 2012: Scaling
Chris Miller
 
Cross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UI
Cross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UICross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UI
Cross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UI
Thomas Daly
 
Drupal performance optimization Best Practices
Drupal performance optimization Best PracticesDrupal performance optimization Best Practices
Drupal performance optimization Best Practices
Ratnesh kumar, CSM
 
A Deep Dive into SharePoint 2016 architecture and deployment
A Deep Dive into SharePoint 2016 architecture and deploymentA Deep Dive into SharePoint 2016 architecture and deployment
A Deep Dive into SharePoint 2016 architecture and deployment
SPC Adriatics
 
NetApp & SharePoint Pro Connections Webinar
NetApp & SharePoint Pro Connections WebinarNetApp & SharePoint Pro Connections Webinar
NetApp & SharePoint Pro Connections Webinar
iamrob
 
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Knut Relbe-Moe [MVP, MCT]
 
SharePoint On-Premises Nirvana
SharePoint On-Premises NirvanaSharePoint On-Premises Nirvana
SharePoint On-Premises Nirvana
John Calvert
 
Caching 101
Caching 101Caching 101
Caching 101
Andy Melichar
 
Mehta - SharePoint Data And Database Management
Mehta - SharePoint Data And Database ManagementMehta - SharePoint Data And Database Management
Mehta - SharePoint Data And Database Management
Nilesh Mehta
 
Back to the Basics: SharePoint Fundamentals by Joel Oleson
Back to the Basics: SharePoint Fundamentals by Joel OlesonBack to the Basics: SharePoint Fundamentals by Joel Oleson
Back to the Basics: SharePoint Fundamentals by Joel Oleson
Joel Oleson
 
Background processing with hangfire
Background processing with hangfireBackground processing with hangfire
Background processing with hangfire
Aleksandar Bozinovski
 
Web storage
Web storage Web storage
Web storage
PratikDoiphode1
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi Vončina
SPC Adriatics
 
Scaling 101 test
Scaling 101 testScaling 101 test
Scaling 101 test
Rashmi Sinha
 

Similar to Optimizing public facing SharePoint sites (20)

SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike WatsonSharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
SharePoint Advanced Administration with Joel Oleson, Shane Young and Mike Watson
 
Black Friday and Cyber Monday- Best Practices for Your E-Commerce Database
Black Friday and Cyber Monday- Best Practices for Your E-Commerce DatabaseBlack Friday and Cyber Monday- Best Practices for Your E-Commerce Database
Black Friday and Cyber Monday- Best Practices for Your E-Commerce Database
 
Establishing Environment Best Practices T12 Brendan Law
Establishing Environment Best Practices T12 Brendan LawEstablishing Environment Best Practices T12 Brendan Law
Establishing Environment Best Practices T12 Brendan Law
 
Learn from my Mistakes - Building Better Solutions in SPFx
Learn from my  Mistakes - Building Better Solutions in SPFxLearn from my  Mistakes - Building Better Solutions in SPFx
Learn from my Mistakes - Building Better Solutions in SPFx
 
SPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst PracticesSPSNYC SharePoint Worst Practices
SPSNYC SharePoint Worst Practices
 
CI_CONF 2012: Scaling - Chris Miller
CI_CONF 2012: Scaling - Chris MillerCI_CONF 2012: Scaling - Chris Miller
CI_CONF 2012: Scaling - Chris Miller
 
CI_CONF 2012: Scaling
CI_CONF 2012: ScalingCI_CONF 2012: Scaling
CI_CONF 2012: Scaling
 
Cross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UI
Cross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UICross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UI
Cross Site Collection Navigation with SPFX, PowerShell PnP, PnP-JS, Office UI
 
Drupal performance optimization Best Practices
Drupal performance optimization Best PracticesDrupal performance optimization Best Practices
Drupal performance optimization Best Practices
 
A Deep Dive into SharePoint 2016 architecture and deployment
A Deep Dive into SharePoint 2016 architecture and deploymentA Deep Dive into SharePoint 2016 architecture and deployment
A Deep Dive into SharePoint 2016 architecture and deployment
 
NetApp & SharePoint Pro Connections Webinar
NetApp & SharePoint Pro Connections WebinarNetApp & SharePoint Pro Connections Webinar
NetApp & SharePoint Pro Connections Webinar
 
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
Unity Connect - Getting SQL Spinning with SharePoint - Best Practices for the...
 
SharePoint On-Premises Nirvana
SharePoint On-Premises NirvanaSharePoint On-Premises Nirvana
SharePoint On-Premises Nirvana
 
Caching 101
Caching 101Caching 101
Caching 101
 
Mehta - SharePoint Data And Database Management
Mehta - SharePoint Data And Database ManagementMehta - SharePoint Data And Database Management
Mehta - SharePoint Data And Database Management
 
Back to the Basics: SharePoint Fundamentals by Joel Oleson
Back to the Basics: SharePoint Fundamentals by Joel OlesonBack to the Basics: SharePoint Fundamentals by Joel Oleson
Back to the Basics: SharePoint Fundamentals by Joel Oleson
 
Background processing with hangfire
Background processing with hangfireBackground processing with hangfire
Background processing with hangfire
 
Web storage
Web storage Web storage
Web storage
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi Vončina
 
Scaling 101 test
Scaling 101 testScaling 101 test
Scaling 101 test
 

More from Gunnar Peipman

Multi-tenant web applications with ASP.NET Core
Multi-tenant web applications with ASP.NET CoreMulti-tenant web applications with ASP.NET Core
Multi-tenant web applications with ASP.NET Core
Gunnar Peipman
 
Brewing Eisbock with Raspberry PI and Windows 10 IoT
Brewing Eisbock with Raspberry PI and Windows 10 IoTBrewing Eisbock with Raspberry PI and Windows 10 IoT
Brewing Eisbock with Raspberry PI and Windows 10 IoT
Gunnar Peipman
 
Deep-Dive to Azure Search
Deep-Dive to Azure SearchDeep-Dive to Azure Search
Deep-Dive to Azure Search
Gunnar Peipman
 
Deep-Dive to Application Insights
Deep-Dive to Application Insights Deep-Dive to Application Insights
Deep-Dive to Application Insights
Gunnar Peipman
 
What's new in ASP.NET vNext
What's new in ASP.NET vNextWhat's new in ASP.NET vNext
What's new in ASP.NET vNext
Gunnar Peipman
 
Porting ASP.NET applications to Windows Azure
Porting ASP.NET applications to Windows AzurePorting ASP.NET applications to Windows Azure
Porting ASP.NET applications to Windows Azure
Gunnar Peipman
 
Working with legacy code
Working with legacy codeWorking with legacy code
Working with legacy code
Gunnar Peipman
 
ASP.NET MVC 4 Overview
ASP.NET MVC 4 OverviewASP.NET MVC 4 Overview
ASP.NET MVC 4 Overview
Gunnar Peipman
 
Building SharePoint Online applications using Napa Office 365 Development Tools
Building SharePoint Online applications using Napa Office 365 Development ToolsBuilding SharePoint Online applications using Napa Office 365 Development Tools
Building SharePoint Online applications using Napa Office 365 Development Tools
Gunnar Peipman
 
Architecting ASP.NET MVC Applications
Architecting ASP.NET MVC ApplicationsArchitecting ASP.NET MVC Applications
Architecting ASP.NET MVC Applications
Gunnar Peipman
 

More from Gunnar Peipman (10)

Multi-tenant web applications with ASP.NET Core
Multi-tenant web applications with ASP.NET CoreMulti-tenant web applications with ASP.NET Core
Multi-tenant web applications with ASP.NET Core
 
Brewing Eisbock with Raspberry PI and Windows 10 IoT
Brewing Eisbock with Raspberry PI and Windows 10 IoTBrewing Eisbock with Raspberry PI and Windows 10 IoT
Brewing Eisbock with Raspberry PI and Windows 10 IoT
 
Deep-Dive to Azure Search
Deep-Dive to Azure SearchDeep-Dive to Azure Search
Deep-Dive to Azure Search
 
Deep-Dive to Application Insights
Deep-Dive to Application Insights Deep-Dive to Application Insights
Deep-Dive to Application Insights
 
What's new in ASP.NET vNext
What's new in ASP.NET vNextWhat's new in ASP.NET vNext
What's new in ASP.NET vNext
 
Porting ASP.NET applications to Windows Azure
Porting ASP.NET applications to Windows AzurePorting ASP.NET applications to Windows Azure
Porting ASP.NET applications to Windows Azure
 
Working with legacy code
Working with legacy codeWorking with legacy code
Working with legacy code
 
ASP.NET MVC 4 Overview
ASP.NET MVC 4 OverviewASP.NET MVC 4 Overview
ASP.NET MVC 4 Overview
 
Building SharePoint Online applications using Napa Office 365 Development Tools
Building SharePoint Online applications using Napa Office 365 Development ToolsBuilding SharePoint Online applications using Napa Office 365 Development Tools
Building SharePoint Online applications using Napa Office 365 Development Tools
 
Architecting ASP.NET MVC Applications
Architecting ASP.NET MVC ApplicationsArchitecting ASP.NET MVC Applications
Architecting ASP.NET MVC Applications
 

Recently uploaded

Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 

Recently uploaded (20)

Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 

Optimizing public facing SharePoint sites

  • 1. Optimizing public facing SharePoint sites Gunnar Peipman IIS/ASP.NET MVP http://weblogs.asp.net/gunnarpeipman/ me@gunnarpeipman.com
  • 2. About me  Name: Gunnar Peipman  From: Tallinn, Estonia  MVP: ASP.NET MVP for 4 years  Job: developer, architect and consultant  Community: ENETA, speaker, blogger  Hobbies: new technology, heavy metal, beers, national cuisines, travelling  Happy boyfriend, father, step father and owner of funny white rabbit 
  • 3. Agenda  Characteristics of public facing sites  Why SharePoint Publishing Infrastructure?  Caching files  Output cache  Using CDN-s
  • 4. Session objectives After this session you should understand:  performance problems of public facing sites  how caching works in SharePoint  how to plan and configure caching  how to measure cache
  • 5. Characteristics  Accessible by anonymous users  Harder to estimate server load  Mostly one-way communication (this is what MS thinks)  Different needs (design, SEO)  Different publishing process
  • 6. SharePoint Publishing Infrastructure  Targeted to public web sites and corporate in-house portals  Perfect fit for corporate information publishing  Publishing workflows  Different optimization options
  • 8. Request to page  Every file reference means new request  Most files are kept in SharePoint libraries  Professional design means hundreds of files  Plus dynamically loaded files
  • 9. Same time in server...
  • 10. What is BLOB cache?  Files from doc libraries are cached to front-end servers  Perfect fit if per page load many requests are made to server  Perfect fit also for large files  Support for e-tags  You save: ◦ Some database connections and queries ◦ Loading files to database server memory ◦ Moving files from db server to web server ◦ Some traffic
  • 11. How to optimize  Keep blobs on separate physical disk  Every front-end server must have its own blobs folder or disk  If disk crashes or you delete files from blob cache you must reset blob cache  Blob cache may slow down your site for a moment when files are copied to disk  When measuring start from second request
  • 13. Caching pages  Built on ASP.NET caching  Output cache is served from memory  Possible to define cache profiles  Profiles can be assigned to page layouts  Code-based policies  Possible to define non-cached areas (called also donut hole caching)
  • 14. Don’t over-cache! Again: Output cache uses server memory!  Morning:  Noon:  Afternoon:  Evening:
  • 15. How to measure cache?  Use ASP.NET and SharePoint performance counters  Make sure counters are not updated too often – it puts markable load on server  Measuring must be long enough to see how cache is actually used  No app-pool recycle or iisreset  If ~85% of requests are served from cache you are okay
  • 16. Output cache Data from real-life scenario
  • 17. About measuring process  Performance counters on production  Interval 15 seconds  Counters: ◦ Total number of objects added ◦ Total object discards ◦ Cache hit count ◦ Cache hit ratio  Duration: 12h (work hours fully covered)  No interruptions
  • 21. Using CDN-s  Files are hosted on other servers  Users get files from closest servers  Many popular JS libs are available in Google and MS CDN servers  You can build your own CDN using Windows Azure services  Point of trouble: wider internet outage
  • 22. Q&A