Post on 24-Dec-2015
transcript
SO, HOW MUCH CAN YOUR FARM REALLY HANDLE?
Patrick Curran, MCTSPSBaltimore05/18/2013
Planet Technologies
Founded in 1998 Microsoft Partner with Five Gold Competencies, 11 Silver Competencies One of only 35 Microsoft Nationally Managed Partners Six Time Microsoft Federal Partner of the Year and Three Time Microsoft SLG Partner of the Year Highly Skilled Staff
– Microsoft Certified Masters– Microsoft MVP’s (SharePoint, Exchange)– Microsoft Certified Trainers– Microsoft Certified Partner for Learning Solutions (CPLS)– 130+ Microsoft Consultants
Office Locations – DC, Denver, Harrisburg, Redmond, Europe, Middle East and Africa (EMEA) Vertical Markets include Federal, State and Local Government, Education, Healthcare and Private
Sector Work Experience in 42 States and 33 Countries
Patrick Curran
Email: pcurran@go-planet.comTwitter: @PCfromDCBlog: http://PCfromDC.com
New Book!
Director, Federal Group for Planet TechnologiesSharePoint ArchitectWorked with SharePoint since 2003
MCT, MCTS, MCITP, MCP
Hands on Labs Area …
Email: pcurran@go-planet.comTwitter: @PCfromDCBlog: http://PCfromDC.com
Agenda
Why Validate? ULS Log Monitoring
Using Developer Dashboard
Using IE Dev Tools
Reviewing IIS Logs
Performance Testing
Load Testing
Stress Testing Q & A
What is REALLY Important?
Farm happiness!Are your ULS logs filling up with errors?
Requests per second!If you do not know how your farm is being used, how
do you know if your farm is built correctly? Baseline numbers!
Getting the Out of The Box numbers on page load times, IOPS, throughput, SQL query execution, just about anything that you can record so you can measure changes instead of guess that your changes are positive.
Why Validate???
Do you really trust your network?1ms is not a long time for communication between
servers… Is your farm functioning correctly?
Is the farm performance within expectations?Do you want your farm to go down then find out that you
have issues? How will a test group of users validate performance?
Load and stress testing cannot be done by people, regardless of how stressful they are!
Upgrading???
Really? Why? You have the ability to get real world utilization
figures before you architect out your new environment!
Ability to stand up your new farm and Load and Stress test your new environment with real numbers!
Not Upgrading???
You still have the ability to get real world utilization figures!
Stand up a new test farm that matches your production environment.
DO NOT PERFORM LOAD AND STRESS TESTING ON YOUR LIVE PRODUCTION ENVIRONMENT!
(you have been warned!)
ULS Logs ULS Logs ULS Logs
After you have created your farm, verify your farm happiness through the ULS Logs.
After farm goes into production, still monitor your ULS Logs.
When troubleshooting issues, start with your ULS Logs…
Download Microsoft ULS Viewer from:http://tinyurl.com/PCfromDC-ULS
ULS Logs ULS Logs ULS Logs
Setting up Microsoft ULS ViewerDemo Time!
IIS Logs Verify IIS Log Settings Install Log Parser
http://tinyurl.com/PCfromDC-LP22
Install Log Parser Studiohttp://tinyurl.com/PCfromDC-LPS
IIS Logs
Reviewing IIS Logs and LPSDemo Time!
Developer Dashboard
Easy way to monitor page load issues. Shows ULS log entries for that page. Now has SQL tab to show SQL queries
Returns query run times! Requires Usage and Health Data Collection
Service. Log your baseline numbers!
M
Developer DashboardEnable:$svc = [Microsoft.SharePoint.Administration.SPWebService]::ContentService$dds = $svc.DeveloperDashboardSettings$dds.DisplayLevel = "On"$dds.Update()
Disable:$svc = [Microsoft.SharePoint.Administration.SPWebService]::ContentService$dds = $svc.DeveloperDashboardSettings$dds.DisplayLevel = “Off"$dds.Update()
M
Developer DashboardM
Reviewing the Developer DashboardDemo Time!
Performance Testing
Makes the user experience better because they wait less to get content!
Reduce bottle necks Need Many Test Plans
What is the goal of the test?○ Document upload speed?○ Homepage rendering time?
RECORD YOUR BASELINE NUMBERS!
Performance Testing Every request that you send has a standard set of processes that it goes through. The Timings
window will be a very useful tool when you are trying to fine-tune your page load performance. Wait This is the amount of time spent in a sending queue. There are only so many connections
allowed by a browser into one domain at the same time. Start This is the amount of time it took to create the request and send it. Request Also known as time to first byte, this is the amount of time taken from when you send
the request to the first byte returned by the web server. Response This is the time taken to receive the response data from the server. It would be the
time from the first byte returned to the last byte of the web server response to your request. Gap This is a critical number. It is the amount of time taken between the response and when
the page is finished loading. DOMContentLoaded This is represented by a green vertical line. The DOMContentLoaded
event is the same as document.interactive, which means that JavaScript can now run on the page. DOM stands for Document Object Model
Load In IE Dev Tools, this is represented by a red vertical line. Load is the amount of time taken to finish your page load from start to page load finish.
Performance Testing Tools
Visual Round Trip Analyzer (VRTA)○ http://tinyurl.com/PCfromDC-MSVRTA○ Requires NetMon
Internet Explorer Developer Tools (IE Dev Tools) Fiddler
○ http://www.fiddler2.com
Visual Studio 2012 Ultimate How Microsoft cleaned up their files on page load
for SharePoint.Microsoft.com “How we did it: Speeding up SharePoint.Microsoft.com”
○ http://tinyurl.com/PCfromDC-spPerformance
Performance Testing
Page Load Performance TestDemo Time!
Load Testing
How user experience affects server operations. Done to determine the highest level of utilization
without server error AND stays within defined parameters.
Determine the number of RPS that your environment can handle while staying within the green zone, and the RPS your environment can handle before entering the red zone.
Load Test Standards RPS The number of requests received by a farm or web server in one second. RPS is an industry standard
used for determining server and farm utilization and load. Total user count The maximum number of people that are accessing your site. This number could be the
total number of unique users in AD. Peak concurrent user percentage What the highest percentage of total users actively surfing your site at
any given time. This could be when everyone gets in on Monday, after having their coffee…. Green zone The performance envelope that your servers should be within while load tests are underway, or
during normal business utilization. Server Latency (Avg. Response Time): < 0.5 second. CPU Utilization (% Processor Time): 50 percent or less. This will allow for spikes in the farm caused by
services such as Search Crawls and User Profile Synchronization and leave you enough headroom in CPU utilization before you enter the red zone.
Available Memory (Available Mbytes): > 4GB. Red zone Would be the acceptable peak for system performance. This is an area that your server can spike
into momentarily, as to not create an adverse experience for the user or do permanent damage to the server itself. (Yes, this is a bit overly dramatic, but consider yourself warned.) Server Latency (Avg. Response Time): > 1.0 second. CPU Utilization (% Processor Time): 75 percent or less. Available Memory (Available Mbytes): < 2GB. Average Page Load Time (Avg. Page Time): > 3.0 seconds
Load Testing Scenarios
ResponsesWeb Server
Load TestEmulation
LoadAgent
ResponsesWeb Server
Load TestEmulation
LoadAgent
Test Results
Test Parameters
Responses
Web Server
Load TestEmulations
LoadAgentsTest Results
Test Parameters
1
2
3
Requests Per Second
Determine requests per second (RPS)
Maximum RPS
Total User Count Concurrent Users Peak Concurrent Users
Max Concurrent RequestsConcurrent Farm OperationsAll Farm Operations
Load Testing
Page Load Load TestingDemo Time!
Stress Testing
The purpose of stress testing is to try to overwhelm the server farm resources (or even the network or NLB).
stress testing your environment is to not just about knowing where things break, but how they will break and how they will recover.
Stress Testing
Environment Stress TestingDemo Time!
Resources
My New Book for Only $15.81 on Amazon!!!
http://tiny.cc/PCfromDC-book
Questions?
Email: pcurran@go-planet.comTwitter: @PCfromDCBlog: http://PCfromDC.com