Top Banner
Gokan Ozcifci (MVP , MCT ) @ gokanozcifci July 25, 2015, New York 11 Times Square, New York, NY 10036 SPS New York #SPSNYC Introduction to performance o ptimization for and
77
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Introduction to performance optimization for SharePoint 2013 and Office 365

Gokan Ozcifci (MVP, MCT)

@gokanozcifci

July 25, 2015, New York

11 Times Square, New York, NY 10036

SPS New York

#SPSNYC

Introduction to performance

optimization for

and

Page 2: Introduction to performance optimization for SharePoint 2013 and Office 365

Gokan OzcifciSharePoint Consultant | MVP

@gokanozcifci

Page 3: Introduction to performance optimization for SharePoint 2013 and Office 365

Thank YouEVENT Sponsors

• We appreciated you supporting the New York SharePoint Community!

• Diamond, Platinum, Gold, & Silver have tables scattered throughout

• Please visit them and inquire about their products & services

• To be eligible for prizes make sure to get your bingo card stamped by ALL sponsor

Page 4: Introduction to performance optimization for SharePoint 2013 and Office 365

My apologies for the strange accent but,English can be weird.

/!\ It can be understood through toughthorough thought, though. /!\

Sorry for the French accent!

Page 5: Introduction to performance optimization for SharePoint 2013 and Office 365

Provide some insights and tips about SharePoint’s Performance.

Microsoft TechNet is not always not your answer

Infrastructure related

Not for SharePoint v.Next and level 200

Other platforms also matters and why?

90/10 (On-Premises | Cloud)

Opinions may differ but these are my own thoughts.

[TOC]

Page 6: Introduction to performance optimization for SharePoint 2013 and Office 365

It covers a huge set of individual technologies under the Platform umbrella

It’s continuously changing

Know when to use OOTB vs CC

Know your users (aka Yammer haters )

Understand SharePoint

Page 7: Introduction to performance optimization for SharePoint 2013 and Office 365

New Service Applications (Machine Translation)

Offloaded Services: Yammer, OneDrive for Business, Office Web Apps, Workflow Manager…

Improved Service Applications (Fast)

Not UI Bindended Services to be managed with PoSH (Subscription Management)

Re-architected Service Applications (Search & OWA)

Different release schedule

OWA can be used for other platforms like Lync, Exchange, …

Understand SharePoint

Page 8: Introduction to performance optimization for SharePoint 2013 and Office 365

Not supported: Dynamic Memory

Discontinued : Web Analytics

Prerequisites: Hardware and software requirements for a single server with a built-in database:

24 GB, 64-bit, 4 cores, 80 GB for system drive

SQL Server 2014 requires the May 2014 CU to be installed

Windows Server 2012 R2 is only supported on a SharePoint Server 2013 Service Pack 1 environment

Understand SharePoint

Page 9: Introduction to performance optimization for SharePoint 2013 and Office 365

Share services across farmsBusiness Connectivity Services, Managed Metadata Service, Search Service (Crawl, Index, Query), Secure Store Service, User Profile Service…

App Management Service = NOT!

New way of works: HNSC

Claims: big deal expect if you have custom code who is dealing with Classic code, and upgrades.. It’s a recommendation to set your authentication model in 2010 as Claims then to migrate.

Understand SharePoint

Page 10: Introduction to performance optimization for SharePoint 2013 and Office 365

N-Tier, N-Layer

Page 11: Introduction to performance optimization for SharePoint 2013 and Office 365

SharePoint

is down!

Page 12: Introduction to performance optimization for SharePoint 2013 and Office 365

Azure & O365

Exchange &

Lync + VoiceCloud Ready

Windows

Server

Authentication

and

Authorization

System Center

2012 ITSM /

ITIL

Migrations

Integrations

OTB Workflows Dashboards

Home Made

ApplicationsPortals And

IntranetsReportsOffice Pack

Infrastructure Business Productivities.

The Microsoft Expertise. A real added value.

The difference in Vision

Page 13: Introduction to performance optimization for SharePoint 2013 and Office 365

Infrastructure Business Productivities.

The Microsoft Expertise. A real added value.

The difference in Vision

Page 14: Introduction to performance optimization for SharePoint 2013 and Office 365

First page hitSubsequent

page hits

Create a site,

list or library

File upload

(3 MB)

< 5 Seconds < 3 Seconds < 5 Seconds < 5 Seconds

Business Perspective

Page 15: Introduction to performance optimization for SharePoint 2013 and Office 365
Page 16: Introduction to performance optimization for SharePoint 2013 and Office 365

According to Gartner early last year (2013) and repeated by Microsoft at their Worldwide Partner Conference (WPC13) in Houston, in the next 6-8 years:

35% of existing SharePoint customers will never move to the cloud

15% will become “pure cloud” customers

50% will adopt a hybrid SharePoint platform

Statistics

Page 17: Introduction to performance optimization for SharePoint 2013 and Office 365

One year later, at the Worldwide Partner Conference in Washington DC (WPC14), a senior Microsoft leader admitted hybrid was bigger than earlier estimated:

15-20% of existing SharePoint customers will never move to the

cloud

10% will become “pure cloud” customers

70-75% will adopt a hybrid SharePoint platform

Statistics

Page 18: Introduction to performance optimization for SharePoint 2013 and Office 365

Through at least 2025, at least 25% of enterprises will choose to keep their core communications and collaboration systems on-premises due to security and privacy concerns.

Several new features from Microsoft such as Delve, Clutter and Office for iOS/Android are only available to cloud customers.

Statistics

Page 19: Introduction to performance optimization for SharePoint 2013 and Office 365

StatisticsMicrosoft is clearly shifting to a "cloud-first" and

even a "cloud-only“ development process in some

cases.

On-premises users will generally pay more, get less

and wait longer for enhancements and new

functionality as a natural result of these cloud-

friendly policies.

Page 20: Introduction to performance optimization for SharePoint 2013 and Office 365

Microsoft has shared limited statistics on how Office365 is being adopted, but did provide some detailinto the reasons why customers purchased Office365:

90% use the platform for

06% use the platform for

04% use the platform for

Statistics

Page 21: Introduction to performance optimization for SharePoint 2013 and Office 365
Page 22: Introduction to performance optimization for SharePoint 2013 and Office 365

No Maintenance.

No Updates.

No Upgrades.

No Scripting.

No Hardware costs.

No Backup.

No (Reduce) Costs.

Office 365 AdvantagesStorage (OneDrive and SharePoint).

Delve.

iOS Apps.

Remote working.

External Sharing.

Clutter / Groups.

Page 23: Introduction to performance optimization for SharePoint 2013 and Office 365

SharePoint DrawbacksPerformance: Working on it.

Licenses: Windows, SQL, SharePoint, Office 2013, Office Web Apps Licenses and CAL’s

Maintenance: Consultant costs ( he costs a lot )

Upgrades/Downgrades:What does each hour of downtime cost your business?

SQL Server: Keeping Default SharePoint

Database Settings

IT Infrastructure related errors: DNS, WAF, F5, Hyper-V …

Scrimping on RAM

The magic Farm Configuration Wizard

Page 24: Introduction to performance optimization for SharePoint 2013 and Office 365

According to Microsoft: there are a few methodsavailable to minimize the amount of downtime;however it’s just not possible to achieve a zerodowntime solution for your upgrade. A commonway to minimize downtime is via implementationof a parallel upgrade farm.

Zero Downtime

« should be possible

with #SP2016 »

Page 25: Introduction to performance optimization for SharePoint 2013 and Office 365
Page 26: Introduction to performance optimization for SharePoint 2013 and Office 365

SharePoint is a PLATFORM

ListLibrary

DNS Error

Server

Correlation ID

Site

Application Domain

Slow

Page 27: Introduction to performance optimization for SharePoint 2013 and Office 365

For the business, if…

Page 28: Introduction to performance optimization for SharePoint 2013 and Office 365
Page 29: Introduction to performance optimization for SharePoint 2013 and Office 365

• Monitor the complete SharePoint Server environment

• Monitor database space usage

• Monitor the status and health of SharePoint services and Web applications, as well as the uptime of the SharePoint server

• Monitor the default Search service and crawl status

• Monitor Recycle Bin usage and ensure the Recycle Bin does not exceed the site quota.

• Monitor and report on how long the SharePoint server has been running since the last reboot

You should know it before business

Page 30: Introduction to performance optimization for SharePoint 2013 and Office 365

• Avoid using the –Force option

• Retracting packages

• Scope your solutions

• Reduce the amount• DLL and Controls are going to the Application Domain.

Layouts, CSS, Resources NOT.

Full Trust Solutions

We all love Add-Ins,

Apps, we all use

WSPs ;-) (#SP2016)

Page 31: Introduction to performance optimization for SharePoint 2013 and Office 365

PatchingYour simple SharePoint Farm Patching on server 1 Backward capability mode. Needs Config Needed.

Patching on server 2 Server 1; PS Config Server 2; PS Config Farm is up again

Page 32: Introduction to performance optimization for SharePoint 2013 and Office 365

• Don't Install CUs Automatically

• The CUs will now show up in Windows Update as Important updates, meaning that they get installed automatically, without notice.

• 'Download only' or

• WSUS [Windows Server Update Services]

• If custom components are used, it can break some functionalities.

• Testers are needed.

• No real governance for Dev – Non-Prod and Prod environments.

Patching

Page 33: Introduction to performance optimization for SharePoint 2013 and Office 365

cliconfg.exe

•Operational tasks

•maintenance is easier.

•Upgrades

•Downgrades

SQL Server Alias

Page 34: Introduction to performance optimization for SharePoint 2013 and Office 365

SharePoint et Always On Availability Groups

Page 35: Introduction to performance optimization for SharePoint 2013 and Office 365

SQL 1

SharePoint

Farm 1

SQL 2

High

Availability

Synchronous

Always On Availability& SharePoint

Page 36: Introduction to performance optimization for SharePoint 2013 and Office 365

SQL 1

SharePoint

Farm 1

SQL 2

Synchronous

Always On Availability& SharePoint

High

Availability

Page 37: Introduction to performance optimization for SharePoint 2013 and Office 365

Database Supported

Admin Content Yes

App Management Yes

BDC Yes

Config Yes

Content Yes

Managed Metadata Yes

PerformancePoint Yes

PowerPivot Not Tested

Project Yes

Search Analytic Reporting Yes

Search Admin Yes

Database Supported

Search Crawl Yes

Search Links Yes

Secure Store Yes

State Service Yes

Subscription Settings Yes

Translation Services Yes

UPA Profile Yes

UPA Social Yes

UPA Sync Yes

Usage(=loggingDB) Yes

Word Automation Yes

Database Support – Sync Commit

Page 38: Introduction to performance optimization for SharePoint 2013 and Office 365

SQL 1 SQL 2 SQL 3

Asynchronous

Disaster

Recovery

Synchronous

DR avec Always On Availability Groups & SharePoint

SharePoint

Farm 1

SharePoint

Farm 2

Page 39: Introduction to performance optimization for SharePoint 2013 and Office 365

Database Supported

Admin Content No

App Management Yes

BDC Yes

Config No

Content Yes

Managed Metadata Yes

PerformancePoint Yes

PowerPivot Not Tested*

Project Yes

Search Analytic Reporting No

Search Admin No

Database Supported

Search Crawl Yes

Search Links Yes

Secure Store Yes

State Service No

Subscription Settings Yes

Translation Services Yes

UPA Profile Yes

UPA Social Yes

UPA Sync No

Usage Yes

Word Automation Yes

Database Support – Async Commit

Page 40: Introduction to performance optimization for SharePoint 2013 and Office 365

Small Farm

Deployment

(0-500GB of

Data)

Medium

Farm

Deployment

(501-1TB of

data)

Large Farm

Deployment

(1-2TB of

Data)

Very Large

Farm

Deployment

(2-5 TB of

Data)

Special

Cases

RAM 8 16 32 64 64+

CPU 4 4 8 8 8

SQL Server - RAM

Page 41: Introduction to performance optimization for SharePoint 2013 and Office 365

Dedicated SQL Server

For optimal performance when operating server farms, we

recommend that you install SQL Server 2008 R2 with SP1 and SQL Server 2012 on a dedicated server that is not running other roles of farm and n 'not host databases for other

Collation: Latin1_General_CI_AS_KS_WS

Cannot be changed after wise

Fine Tuning SQL Server

Page 42: Introduction to performance optimization for SharePoint 2013 and Office 365

•NFTS Allocation Unit Size: 64KSQL reads and writes 64K at a time, but your disk allows only 4K by default. This change alone may show you up to 30% improvement in speed.

“chkdsk c:”

Cannot be changed after wise. Format disk is necessary.

Fine Tuning SQL Server

Page 43: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning SQL ServerSet min. and max. Server

/!\ Total amount memory x 0,80 /!\ The default value of SQL Server for Maximum Memory is : 2147483647 MB

Maximum fill factor per index (80%)

Activate backup compressionIt’s faster and needs less disks space

Max Degree of Parallelism (MAXDOP) = 1Prerequisite for SharePoint 2013

Page 44: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning SQL ServerUse a dedicated search instance > 10’000’000 items

Antivirus: Exclude data files, transaction logs and backup files from real-time scan

Install only features and components you need. SharePoint only requires: Database Engine Services

Do not enable Statistics

Page 45: Introduction to performance optimization for SharePoint 2013 and Office 365

Create your Databases with PoSH

Fine Tuning SQL Server

Page 46: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning SQL ServerData prioritization among faster disks (descending)

• Temp DB data files

• Temp DB logs

• Content DB logs

• Search DB data files

• Content DB data files

• Search DB logs

• SharePoint data files

• SharePoint logs

Page 47: Introduction to performance optimization for SharePoint 2013 and Office 365

• Latency between SharePoint Server and SQL Server should be less than 1ms

• Host all the servers in the same datacenter.

• /!\ If the datacenter has a problem, your SharePoint farm can be down /!\

• Don’t use Network Load Balancing (NLB), but a real load balancer like

• In case of problem: Requests to one server

Remove the load (http requests)

/!\ 3 is the new 2 /!\

• Fully Redundant SharePoint Farm/!\ 7 is the new 5 /!\

Importance of a Load Balancer

Page 48: Introduction to performance optimization for SharePoint 2013 and Office 365

• Use a Swap Serverd: is the production of your developers

q: is the production of your content owners

p: is the production of your Business

• Script as much as possibleCreate your own PowerShell (PoSH) Framework

• Use the object modelWeb.Config

Regroup operational tasks

Page 49: Introduction to performance optimization for SharePoint 2013 and Office 365

•Content Databases shouldn’t be more than 200GBBackup / Restore

Operational tasks

•5000 Site collections per Content Database

• 10 Application Pools (can be extended depending hardware)

•20 web Applications per SharePoint Farm

•Don’t use the Product Configuration Wizard

SharePoint Fine Tuning

Page 50: Introduction to performance optimization for SharePoint 2013 and Office 365

•Set Quotas on all Web Applications

•Disable Certificate Revocation List

•Authentication

Anonymous, Claims, Kerberos, NTLM, Forms, ADFS

•Wake-Up

•Only extend if you have a different authentication protocol.

SharePoint Fine Tuning

Page 51: Introduction to performance optimization for SharePoint 2013 and Office 365

•Distribute the load on multiple crawl servers

•Throttle crawling, adjust crawling schedule

•Incremental vs continuous crawl

•Content sources• Group by

SharePoint Fine Tuning

Page 52: Introduction to performance optimization for SharePoint 2013 and Office 365

SharePoint Fine Tuning

Page 53: Introduction to performance optimization for SharePoint 2013 and Office 365

•Distributed Cache• 5% of RAM is used for Newsfeed, Microblogging etc..

•Object Cache ( SuperUser, SuperReader)

•Client Cache (Websites with CSS, Javascript)

•Output cache (caches SC, Publishing features)

SharePoint Fine Tuning

Page 54: Introduction to performance optimization for SharePoint 2013 and Office 365

•Application Pool Recycle && IISReset

•Crawl Jobs (continuous crawl)

•Backup Jobs

•Large list operations

SharePoint Fine Tuning

Page 55: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning SharePoint Server (Resource-intensive Service Applications)

•Excel Service Application

•Search Service Application

•Usage and Health Data collection

•User Profile Service Application

Page 56: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Client SideOperating System.

Install Latest updates. [/WSUS]

Antivirus. Exclude files from real-time scan for Enterprise computers:

Turn off scanning:Windows Update or Automatic UpdateWindows Security filesGroup Policy related filesSYSVOL files DFS and DHCP files

Page 57: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Client SideMicrosoft Office.

Use the newest Office Version for best compatibility

Internet Explorer.

Supported:

Internet Explorer 11,

Internet Explorer 10,

Internet, Explorer 9,

Internet Explorer 8

Page 58: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerWindows Server performance options

Computer > Properties > Advanced system settings > Performance > Settings > Visual Effects

Page 59: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerDetermine page file size

Factor 1,5 of the server RAM. Ex:

8192 MB RAM x 1,5 = 12288 MB pagefile

Computer > Properties > Advanced system settings > Performance > Settings > Advanced > Virtual Memory > Settings

Page 60: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerUse the proper power plan | High Performance

Start > Control Panel > Power Options

Page 61: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerStop / disable unused services

• Spooler

• AudioSrv

• TabletInputService

• WerSvc services

Page 62: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerWindows Firewall

Manually define the SQL rules on the Windows Firewall

• 1433 (TCP)

• 1434 (UDP)

Page 63: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerAntivirusExclude files from real-time scan Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions

Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\Logs

Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\Data\Applications

Page 64: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Windows ServerReduce I/O

System, Log and Index files:

•C: System

•G: Index

•H: Logs

Page 65: Introduction to performance optimization for SharePoint 2013 and Office 365
Page 66: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Office 365

1,000ms

5,000ms

The slowest 1% of pages in SharePoint online take more than 5,000ms to load

75% of SharePoint Online pages load in less than 1,000ms

Page 67: Introduction to performance optimization for SharePoint 2013 and Office 365

Fine-tuning Office 365

Internet

peering and

routing

Customer

Internet

connection

Microsoft

network

Microsoft

edge nodes

Content

delivery

network

Server

workloads

Your Client

Page 68: Introduction to performance optimization for SharePoint 2013 and Office 365

Why SharePoint pages get slow…

Server

Browser

Network

Complex pages

Too many web partsLarge payload

Too many files

Large distance to server

Complex pages

Busy computer

Small cache

Server

Expensive server interactions

Front end cache misses

Network

MicrosoftNetwork

Internet

ISP

CDN

Page 69: Introduction to performance optimization for SharePoint 2013 and Office 365

Not Nice To Do’s• Unstructured Data Takeover

• The biggest culprit in this respect are complex pages with multiple web parts.

•Many of the issues that affect performance with SharePoint on-premises also apply to SharePoint Online.

• An avalanche of large media

• SharePoint Images• Keep them small

•Minify all JavaScript and CSS assets

Page 70: Introduction to performance optimization for SharePoint 2013 and Office 365

Plan, Plan and Plan again!

Page 71: Introduction to performance optimization for SharePoint 2013 and Office 365

Things to factor into your designCloud Parity Devices Connectivity

Page 72: Introduction to performance optimization for SharePoint 2013 and Office 365

Troubleshooting performance process

•Network Capture tool • Netmon

• WireShark

• TCPDump

• Microsoft Message Analyzer

•Application Level tools• HTTPWatch

• Fiddler

Page 73: Introduction to performance optimization for SharePoint 2013 and Office 365

Summary

Page 74: Introduction to performance optimization for SharePoint 2013 and Office 365

If budget is no problem

If you can’t promise 99,99% uptime

If you don’t have the knowledge

If you have an existing SharePoint that fits the business requirements

If the cloud is “nogo” for you.

Custom Codes, layouts, settings, …

Use SharePoint Server, if…

Page 75: Introduction to performance optimization for SharePoint 2013 and Office 365

If the cloud is not a problem for your organisation

If you can’t handle SharePoint and his friends

If you don’t have the budget of a Fully Redundant Farm or consultants

If you have to begin from scratch

If you want to have all new features/solutions and pay less.

Can’t promise 99,9% of SLA

Use SharePoint Online, if…

Page 76: Introduction to performance optimization for SharePoint 2013 and Office 365

SummaryPerformance -, it depends

Other platforms also matters

SharePoint is fast, but depends many about others

You can improve, improve and improve

Page 77: Introduction to performance optimization for SharePoint 2013 and Office 365

• https://technet.microsoft.com/en-us/library/cc748824.aspx

• https://technet.microsoft.com/en-us/library/jj715263.aspx

• http://blogs.msdn.com/b/sambetts/archive/2013/08/22/sharepoint-farm-patching-explained.aspx

References