SlideShare a Scribd company logo
1 of 21
Optimizing Web Performance for SaaS Success Is it the Cloud, the App, or Just Me? © 2010 Keynote Systems, Inc. Keynote & Client Confidential. March 31, 2010 Robert Hughes  Global Director of Solutions Consulting
Our Agenda Today March 31, 2010 2 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
 Not all cloud platforms and architectures are the same. March 31, 2010 3 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
Web Development Platforms March 31, 2010 4 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Web ServicesPlatforms J2EE Servlet JBoss Tomcat Struts Hibernate Axis Spring Httpd PHP Perl OpenLDAP Samples Tomcat Struts Hibernate Axis Spring Httpd PHP Perl OpenLDAP Samples Database MySQL     phpMyAdminPostresqlphpPgAdmin LAMP Internet Plug-inPlatforms Httpd PHP Perl OpenLDAP Samples Stack Management SpikeInstallOpenPKGSpikePKGSpikeIntegration controlpanelruntime ApplicationPlatforms
Data Center Architecture Example March 31, 2010 5 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. 100ms latency between data centers x 10 million requests per second = slow Web app Google estimates that for every additional 500 milliseconds of delay, their site losses 20% of their traffic!
Why build an app in the cloud? March 31, 2010 6 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
March 31, 2010 7 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Speed to Market Ease of Operational Management They want  me to deliver this new app, and they want it all working in production in8 weeks!  Do we need to build another data center to prepare for this application toscale? Developer Productivity I need to spend more time on meeting functional requirements, not on infrastructure readiness
Rich Functionality Developed Using... March 31, 2010 8 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. …point and click interface...
...But There are Multiple Points of Failure March 31, 2010 9 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Who is responsible if a Salesforce or Google web service doesn’t work?
What do your customers experience? March 31, 2010 10 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
Performance Hotspots March 31, 2010 11 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. DataCenter Latency ConnectionSpeeds Globally Application Construction
The End User Environment Can be an Application in Itself Microsoft XML March 31, 2010 12 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. HTTPS Load Balancer Load Balancer Load Balancer StaticContent Dynamic Content Web Server Web Server Web Server App Server StaticContent Dynamic Content Web Server Web Server Web Server App Server StaticContent Dynamic Content Web Server Web Server Web Server App Server Storage Storage Storage Today up to 75% of actions can happen on the end user side SSL TCP/IP DB End User Oracle Browsers XML Soap HTTPS XML Ajax HTTPS SSL Flex SSL TCP/IP Silver Light DB TCP/IP Streaming Local Storage Salesforce.com XML HTTPS SSL TCP/IP DB
Today the Browser is a Complex “Platform” March 31, 2010 13 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
Cloud App Performance is Impacted by: March 31, 2010 14 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Business Transactions Rich UIs Organizational Boundaries End Users Device Diversity International Users
What are the Challenges for Delivering SaaS? Application down time:  Multiple software components from different vendors – failure of any single component can bring down your entire system.  Where is it broken? Identifying what’s causing performance issues can be a challenge with customers accessing your application from different locations, at different times. Lack of standards:  Multifaceted (multi-vendor) applications results in integration problems. Cost:  Your providers may charge you regardless of usage – but your customers will only pay for guaranteed performance. Regulation: SOX compliance when changing your code requires documentation and testing. March 31, 2010 15 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
Six Fundamental Reasons Companies Measure Performance of Their Sites To establish baselines (what is normal for my site?) To detect and repair errors To measure the effectiveness of a change Without monitoring performance before and after changes, you’ll have no idea whether things got better or worse!!!  Did the change make performance better? To determine the impact of an outage (it is inevitable that something will break) To resolve disputes with users (SLA’s) To estimate how much capacity will be needed in the future (Load) March 31, 2010 16 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
What do your customers experience? March 31, 2010 17 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
How Companies Measure Performance March 31, 2010 18 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Keynote Transaction Perspective & Loadpro Keynote Internet Testing Environment ExternalGeographicalMonitoring &  LoadTesting Keynote Private Agent High-volume InternalMonitoring InteractiveTesting How to Get a CloudPerspective Content Testing on MobileDevices UsabilityTesting Keynote Mobile Device Perspective Keynote Web Effective BenchmarkingAgainst IndustryIndices Keynote Performance Insights
Performance Management Best Practices Test at every stage in application lifecycle – build with the user in mind Test from the cloud – where your users are Test with a browser – what your users use Capture the right metrics – what impacts your user March 31, 2010 19 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
Using SLA Monitoring As a Competitive Differentiator External: Measure service level compliance for outsourced service/content providers and third party applications Internal: Measure availability, performance and quality of service compliance delivered by Web Operations and IT teams to business stakeholders Credible: Performance metrics delivered by a trusted third party source March 31, 2010 20 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Deliver the service levels your customers expect!
March 31, 2010 21 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Thank You! How to reach me: Robert Hughes 650 403 7438 Robert.hughes@keynote.com http://www.linkedin.com/pub/robert-hughes/2/551/827

More Related Content

Viewers also liked

Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT
 Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT
Improving Application Performance in the Age of SaaS, Mobility and Hybrid ITMark Casey
 
Testing SAAS, how to go about it?
Testing SAAS, how to go about it?Testing SAAS, how to go about it?
Testing SAAS, how to go about it?Tomek Borek
 
Agile Testing in the Cloud
Agile Testing in the CloudAgile Testing in the Cloud
Agile Testing in the CloudCygnet Infotech
 
SaaS Testing Overview - Foundation
SaaS Testing Overview - FoundationSaaS Testing Overview - Foundation
SaaS Testing Overview - FoundationRam Garg
 

Viewers also liked (6)

SaaS Testing
SaaS TestingSaaS Testing
SaaS Testing
 
Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT
 Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT
Improving Application Performance in the Age of SaaS, Mobility and Hybrid IT
 
Testing SAAS, how to go about it?
Testing SAAS, how to go about it?Testing SAAS, how to go about it?
Testing SAAS, how to go about it?
 
Agile Testing in the Cloud
Agile Testing in the CloudAgile Testing in the Cloud
Agile Testing in the Cloud
 
Testing a SaaS Platform
Testing a SaaS PlatformTesting a SaaS Platform
Testing a SaaS Platform
 
SaaS Testing Overview - Foundation
SaaS Testing Overview - FoundationSaaS Testing Overview - Foundation
SaaS Testing Overview - Foundation
 

Similar to Saa s webinar slides final rlh - 3-31

CloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comCloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comAlistair Croll
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...Jitendra Bafna
 
AWS Community Day Ireland - Building roads and bridges in the last decade of ...
AWS Community Day Ireland - Building roads and bridges in the last decade of ...AWS Community Day Ireland - Building roads and bridges in the last decade of ...
AWS Community Day Ireland - Building roads and bridges in the last decade of ...Heitor Lessa
 
Achieve quick wins in your organization with Power Automate
Achieve quick wins in your organization with Power AutomateAchieve quick wins in your organization with Power Automate
Achieve quick wins in your organization with Power AutomateParas Dodhia
 
Innovation morning microsoft 365 e security
Innovation morning microsoft 365 e security Innovation morning microsoft 365 e security
Innovation morning microsoft 365 e security Claudia Angelelli
 
Defy Occassionally Connected Challenges With Smart Client Applications
Defy Occassionally Connected Challenges With Smart Client ApplicationsDefy Occassionally Connected Challenges With Smart Client Applications
Defy Occassionally Connected Challenges With Smart Client ApplicationsClint Edmonson
 
MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MizuhoHoshino
 
Cloud 12 08 V2
Cloud 12 08 V2Cloud 12 08 V2
Cloud 12 08 V2Pini Cohen
 
Private Cloud Platform as a Service
Private Cloud Platform as a ServicePrivate Cloud Platform as a Service
Private Cloud Platform as a ServiceJim Kaskade
 
Oracle E2.0 WebCenter Portal Strategy
Oracle E2.0 WebCenter Portal StrategyOracle E2.0 WebCenter Portal Strategy
Oracle E2.0 WebCenter Portal StrategyFumiko Yamashita
 
How to build, manage and operate a successful saas business
How to build, manage and operate a successful saas businessHow to build, manage and operate a successful saas business
How to build, manage and operate a successful saas businesskanimozhin
 
Recipe for successful saas company part 1
Recipe for successful saas company part 1Recipe for successful saas company part 1
Recipe for successful saas company part 1kanimozhin
 
Recipe for Successful SaaS Company - Part 1
Recipe for Successful SaaS Company - Part 1Recipe for Successful SaaS Company - Part 1
Recipe for Successful SaaS Company - Part 1Techcello
 
Integrating Cloud-based performance test in VSTS with SOASTA CloudTest
Integrating Cloud-based performance test in VSTS with SOASTA CloudTestIntegrating Cloud-based performance test in VSTS with SOASTA CloudTest
Integrating Cloud-based performance test in VSTS with SOASTA CloudTestJennifer Finney
 
Lync Business Value With UC And Lync
Lync Business Value With UC And LyncLync Business Value With UC And Lync
Lync Business Value With UC And Lyncteknologik
 
ClientSummit2010_CloudWorkshop
ClientSummit2010_CloudWorkshopClientSummit2010_CloudWorkshop
ClientSummit2010_CloudWorkshopRazorfish
 
Fy10 Software + Services Cloud Overview 2 of 4
Fy10 Software + Services Cloud Overview 2 of 4Fy10 Software + Services Cloud Overview 2 of 4
Fy10 Software + Services Cloud Overview 2 of 4David Williams
 
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010TEST Huddle
 

Similar to Saa s webinar slides final rlh - 3-31 (20)

An Introduction to Lightning Web Components
An Introduction to Lightning Web ComponentsAn Introduction to Lightning Web Components
An Introduction to Lightning Web Components
 
CloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.comCloudOps evening presentation from Salesforce.com
CloudOps evening presentation from Salesforce.com
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
 
AWS Community Day Ireland - Building roads and bridges in the last decade of ...
AWS Community Day Ireland - Building roads and bridges in the last decade of ...AWS Community Day Ireland - Building roads and bridges in the last decade of ...
AWS Community Day Ireland - Building roads and bridges in the last decade of ...
 
Achieve quick wins in your organization with Power Automate
Achieve quick wins in your organization with Power AutomateAchieve quick wins in your organization with Power Automate
Achieve quick wins in your organization with Power Automate
 
Innovation morning microsoft 365 e security
Innovation morning microsoft 365 e security Innovation morning microsoft 365 e security
Innovation morning microsoft 365 e security
 
Defy Occassionally Connected Challenges With Smart Client Applications
Defy Occassionally Connected Challenges With Smart Client ApplicationsDefy Occassionally Connected Challenges With Smart Client Applications
Defy Occassionally Connected Challenges With Smart Client Applications
 
MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8
 
Cloud 12 08 V2
Cloud 12 08 V2Cloud 12 08 V2
Cloud 12 08 V2
 
Private Cloud Platform as a Service
Private Cloud Platform as a ServicePrivate Cloud Platform as a Service
Private Cloud Platform as a Service
 
Oracle E2.0 WebCenter Portal Strategy
Oracle E2.0 WebCenter Portal StrategyOracle E2.0 WebCenter Portal Strategy
Oracle E2.0 WebCenter Portal Strategy
 
How to build, manage and operate a successful saas business
How to build, manage and operate a successful saas businessHow to build, manage and operate a successful saas business
How to build, manage and operate a successful saas business
 
Recipe for successful saas company part 1
Recipe for successful saas company part 1Recipe for successful saas company part 1
Recipe for successful saas company part 1
 
Recipe for Successful SaaS Company - Part 1
Recipe for Successful SaaS Company - Part 1Recipe for Successful SaaS Company - Part 1
Recipe for Successful SaaS Company - Part 1
 
Integrating Cloud-based performance test in VSTS with SOASTA CloudTest
Integrating Cloud-based performance test in VSTS with SOASTA CloudTestIntegrating Cloud-based performance test in VSTS with SOASTA CloudTest
Integrating Cloud-based performance test in VSTS with SOASTA CloudTest
 
Lync Business Value With UC And Lync
Lync Business Value With UC And LyncLync Business Value With UC And Lync
Lync Business Value With UC And Lync
 
ClientSummit2010_CloudWorkshop
ClientSummit2010_CloudWorkshopClientSummit2010_CloudWorkshop
ClientSummit2010_CloudWorkshop
 
Portal on the Cloud
Portal on the CloudPortal on the Cloud
Portal on the Cloud
 
Fy10 Software + Services Cloud Overview 2 of 4
Fy10 Software + Services Cloud Overview 2 of 4Fy10 Software + Services Cloud Overview 2 of 4
Fy10 Software + Services Cloud Overview 2 of 4
 
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
 

Saa s webinar slides final rlh - 3-31

  • 1. Optimizing Web Performance for SaaS Success Is it the Cloud, the App, or Just Me? © 2010 Keynote Systems, Inc. Keynote & Client Confidential. March 31, 2010 Robert Hughes Global Director of Solutions Consulting
  • 2. Our Agenda Today March 31, 2010 2 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
  • 3. Not all cloud platforms and architectures are the same. March 31, 2010 3 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
  • 4. Web Development Platforms March 31, 2010 4 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Web ServicesPlatforms J2EE Servlet JBoss Tomcat Struts Hibernate Axis Spring Httpd PHP Perl OpenLDAP Samples Tomcat Struts Hibernate Axis Spring Httpd PHP Perl OpenLDAP Samples Database MySQL phpMyAdminPostresqlphpPgAdmin LAMP Internet Plug-inPlatforms Httpd PHP Perl OpenLDAP Samples Stack Management SpikeInstallOpenPKGSpikePKGSpikeIntegration controlpanelruntime ApplicationPlatforms
  • 5. Data Center Architecture Example March 31, 2010 5 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. 100ms latency between data centers x 10 million requests per second = slow Web app Google estimates that for every additional 500 milliseconds of delay, their site losses 20% of their traffic!
  • 6. Why build an app in the cloud? March 31, 2010 6 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
  • 7. March 31, 2010 7 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Speed to Market Ease of Operational Management They want me to deliver this new app, and they want it all working in production in8 weeks! Do we need to build another data center to prepare for this application toscale? Developer Productivity I need to spend more time on meeting functional requirements, not on infrastructure readiness
  • 8. Rich Functionality Developed Using... March 31, 2010 8 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. …point and click interface...
  • 9. ...But There are Multiple Points of Failure March 31, 2010 9 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Who is responsible if a Salesforce or Google web service doesn’t work?
  • 10. What do your customers experience? March 31, 2010 10 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
  • 11. Performance Hotspots March 31, 2010 11 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. DataCenter Latency ConnectionSpeeds Globally Application Construction
  • 12. The End User Environment Can be an Application in Itself Microsoft XML March 31, 2010 12 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. HTTPS Load Balancer Load Balancer Load Balancer StaticContent Dynamic Content Web Server Web Server Web Server App Server StaticContent Dynamic Content Web Server Web Server Web Server App Server StaticContent Dynamic Content Web Server Web Server Web Server App Server Storage Storage Storage Today up to 75% of actions can happen on the end user side SSL TCP/IP DB End User Oracle Browsers XML Soap HTTPS XML Ajax HTTPS SSL Flex SSL TCP/IP Silver Light DB TCP/IP Streaming Local Storage Salesforce.com XML HTTPS SSL TCP/IP DB
  • 13. Today the Browser is a Complex “Platform” March 31, 2010 13 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
  • 14. Cloud App Performance is Impacted by: March 31, 2010 14 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Business Transactions Rich UIs Organizational Boundaries End Users Device Diversity International Users
  • 15. What are the Challenges for Delivering SaaS? Application down time: Multiple software components from different vendors – failure of any single component can bring down your entire system. Where is it broken? Identifying what’s causing performance issues can be a challenge with customers accessing your application from different locations, at different times. Lack of standards: Multifaceted (multi-vendor) applications results in integration problems. Cost:  Your providers may charge you regardless of usage – but your customers will only pay for guaranteed performance. Regulation: SOX compliance when changing your code requires documentation and testing. March 31, 2010 15 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
  • 16. Six Fundamental Reasons Companies Measure Performance of Their Sites To establish baselines (what is normal for my site?) To detect and repair errors To measure the effectiveness of a change Without monitoring performance before and after changes, you’ll have no idea whether things got better or worse!!! Did the change make performance better? To determine the impact of an outage (it is inevitable that something will break) To resolve disputes with users (SLA’s) To estimate how much capacity will be needed in the future (Load) March 31, 2010 16 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
  • 17. What do your customers experience? March 31, 2010 17 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Monitoring& Testing Getting a Cloud Perspective Performance Complexities Building SaaS Apps Platforms, and Architecture
  • 18. How Companies Measure Performance March 31, 2010 18 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Keynote Transaction Perspective & Loadpro Keynote Internet Testing Environment ExternalGeographicalMonitoring & LoadTesting Keynote Private Agent High-volume InternalMonitoring InteractiveTesting How to Get a CloudPerspective Content Testing on MobileDevices UsabilityTesting Keynote Mobile Device Perspective Keynote Web Effective BenchmarkingAgainst IndustryIndices Keynote Performance Insights
  • 19. Performance Management Best Practices Test at every stage in application lifecycle – build with the user in mind Test from the cloud – where your users are Test with a browser – what your users use Capture the right metrics – what impacts your user March 31, 2010 19 © 2010 Keynote Systems, Inc. Keynote & Client Confidential.
  • 20. Using SLA Monitoring As a Competitive Differentiator External: Measure service level compliance for outsourced service/content providers and third party applications Internal: Measure availability, performance and quality of service compliance delivered by Web Operations and IT teams to business stakeholders Credible: Performance metrics delivered by a trusted third party source March 31, 2010 20 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Deliver the service levels your customers expect!
  • 21. March 31, 2010 21 © 2010 Keynote Systems, Inc. Keynote & Client Confidential. Thank You! How to reach me: Robert Hughes 650 403 7438 Robert.hughes@keynote.com http://www.linkedin.com/pub/robert-hughes/2/551/827

Editor's Notes

  1. Our agenda today involves:Understanding the cloud platforms and architecturesWhy SaaS apps are so popularThe complexities of SaaS appsHow to get a complete “cloud pespective” on your SaaS performance
  2. Not all Cloud platforms and architectures are the same – knowing that is important. Because who you select as a partner Can give you different challenges.
  3. Here we see various development platforms used in SAAS applications.-the LAMP solution stackSOAP used in Apache AccessJ2EE Development stackMany of these can come from Open SourceWhile it is outside the scope of this presentation, it is important to recognize that not all platforms are the same. Some more than others will be more ideal for your SaaS application. All of them inherently have a sweet spot and all have some performance challenges built-in. This is not a step to be taken lightly in your decision making.Notes:Apache Axis is an implementation of the SOAP ("Simple Object Access Protocol) SOAP is a lightweight XML protocol for exchanging structured information in a decentralized, distributed environment.Apache Struts is an open-sourceweb application framework for developing Java EEweb applications.LAMP is an acronym for a solution stack of free, open source software, originally coined from the first letters of Linux (operating system), Apache HTTP Server, MySQL (database software), and PHP, Python or Perl (scripting language), principal components to build a viable general purpose web server[1].OpenLDAP Software is a free, open source implementation of the Lightweight Directory Access Protocol (LDAP) The OpenLDAP server (slapd, the Standalone LDAP Daemon) architecture was split between a frontend which handles network access and protocol processing, and a backend which deals strictly with data storage. The architecture is modular and many different backends are available for interfacing to other technologies, not just traditional databases.A Servlet is a Java class which conforms to the Java Servlet API, a protocol by which a Java class may respond to http requests. Thus, a software developer may use a servlet to add dynamic content to a Web server using the Java platform. The generated content is commonly HTML, but may be other data such as XML.Spring is a layered Java/J2EE application platform - You can use all of Spring's functionality in any J2EE server, and most of it also in non-managed environments. A central focus of Spring is to allow for reusable business and data access objects that are not tied to specific J2EE services. Such objects can be reused across J2EE environments (web or EJB), standalone applications, test environments, etc without any hassle.Hibernate is an object-relational mapping (ORM) library for the Java language, providing a framework for mapping an object-orienteddomain model to a traditional relational database. Hibernate solves object-relational impedance mismatch problems by replacing direct persistence-related database accesses with high-level object handling functions.The Java 2 Platform, Enterprise Edition (J2EE) defines the standard for developing multitier enterprise applications. The J2EE platform simplifies enterprise applications by basing them on standardized, modular components, by providing a complete set of services to those components, and by handling many details of application behavior automatically, without complex programming.
  4. Many of us had heard of or use Facebook – they started as a social networking site, now they allow a variety of services to be aggregated and mashed up from multiple sources – platform as a service – they now describe themselves as a platform!I will use the Facebook architecture as an example – by the time I finalized these slides these numbers have already changed and they will change again before I finish this Webinar!Top tier made up of eight-core web servers running Linux and Apache.Bottom tier is 800 eight-core Linux servers, distributing over 40 terabytes of user data (this tier stores all the metadata about each object in the database, such as a person, a photo, or event)Middle tier is caching servers, because the 800 database servers can’t serve up all the needed dataFacebook receives 15,000,000 requests per second for both data and connections.95% of data queries can be filled from the cache server’s 15 TB of RAM.Only 5% (500,000) queries per second have to be passed to the MySQL databases and their relatively slow hard drivesVirginia data center is too far away from the Santa Clara facility’s MySQL databases – Just 7 milliseconds of Internet delay would add 3500 seconds of delay, or the equivalent 1 hour of latency.I know of other very large SAAS providers that have very similar architectures!.007 x 500,000 = 3500 seconds
  5. Next Lets talk about Building SaaS Applications.Why even build an app in the cloud? What are the advantages or disadvantages?
  6. Our customers tell us, their development teams need to: Upgrade existing apps and/or bring new applications to market much faster, business executives expect they deliver new apps more rapidly and more often.They Also have to deal with a much more complex application environment-Fixing code in production is not an option. And today with SOX that is a big NO anyway.There are 3 main reasons SAAS has become so popular:First ) Speed to Market – which helps meet the requirement for quick releasesSecondly) Ease of Operational Management – You don’t always know how much you will need to scale and this model allows the ease of getting additional capacity quickly!Thirdly) Developer Productivity – The SaaS model allows developers to focus on functional requirements and not have to worry so much about infrastructure.
  7. Lets look at an example of Rich Functionality of a SaaS application developed using a point and click interface – Someone told me to check out this site – I was amazed!AppExchange has over 847 Apps and 214 Services and growing
  8. What are the expectations of your customers?Service levels agreements record a common understanding about services, priorities, responsibilities and guarantees between the cloud provider and ultimately the cloud user.The rich on-demand functionality in a SAAS environment also introduces multiple points of failure – (James to ask Question here)Some of the questions you need to be asking are:What happens if, for example, SalesForce.com has an issue?Are you supporting all the services?What is the agreed escalation process?What is the SLA and Who is responsible for it? What kind of Penalty is imposed if the SLA is not met? “I know of one SAAS provider who’s penalty is to give one months credit to its consumer if the SLA is not met any time during a one month period.”Not only could this become be very costly if you have repetitive issues, but you also run the risk of damaging your brand and losing customers
  9. Now lets look at some of the complexities in Testing, Monitoring and Supporting service levels.According to ITIL - performance = expectations!If your site does not have acceptable performance it is essentially not usable and therefore not availableWhy speed means moneyGoogle benefits materially from fast performance. First, when it comes to search, Google discovered when its search page loads fractionally faster, users search more often, which of course leads to more opportunities for Google to place its highly lucrative text ads. Second, a faster Web application foundation means that Google's online applications for e-mail, word processing, spreadsheets, and calendars can become faster and fuller-featured"Our business does well if people are using the Web a lot and are able to use it easily and quickly," Google co-founder Sergey said.
  10. What are the common performance hotspots?Today too many people just look at Data Center Latency.Connection Speeds globally can play an important role in how your application responds. What is good performance in San Francisco may not be so good in Hong Kong. How well your application is constructed plays an important role in its usability once your hosting it over the cloud(James Ask question here)For example – China imposes filtering on all internet content – if you are not testing your SaaS app from outside the firewall you will not see the geographic dependencies.Testing from outside your firewall means looking at many things that can break between a visitor and your websiteCDN’sDNSRoutersLoad BalancersServersThird-party contentClient Side scriptsBrowser-add-onsYou need a view into what the consumer of your service is experiencing – how many times do you hear “ everything looks fine in the data center” ? In this virtual environment – the health of the data center is important but today it is only a small portion of the application.You need to verify the health of all these systems, from all locations, all the time!Today there are many tools for testing applications – but not many which allows you to run free on demand tests from cities around the world. I will be talking about one such tool available from keynote later in the presentation.
  11. Let’s face it – with SAAS your applications are no longer in one place!Traditional Performance management disciplines have come from an IT centric view of the world.With the Cloud, Web Services, distributed datacenters, CDN’s, advanced browser technology and mobile devices your application now lives everywhere!Estimates show that 75% of performance issues happen either in the browser or in the path to the browser.
  12. To be more specific, I believe revolution of change has began with the browser and how we view it.The browser is no longer just fetching images and HTML and playing the role of a document reader. Web 1.0Web 2.0Double Click>>>Google AdSenseBritannica Online>>> WikiPediaContent management systems >>> WikisComputers >>> Mobile DevicesThe browser itself is now a platform with asynchronous execution happening on the browser side! Browsers have become full fledged application environments. Rendering, executing, initializing and transacting!How is this changing performance management? Most performance management tools were developed with the idea that that browser doesn’t matter;That most performance bottlenecks are really in the network, or in the application (at the data center). This is no longer true. A large portion of the work I do with customers is identifying and improving the delay within the browser. How the browser threads and serializes on JavaScript, or related to the initialization and rendering time of a Flash or Silverlight module. If you are going to do serious performance management, you need to understand the browser. This means new tools and new ways of understanding what is going on in this new Browser “Platform”.The Web and it’s browsers are one of the world’s biggest and most important computing platforms!
  13. Cloud application performance is impacted by a number of different things!Daily business transactions, Boundaries between organizations, Rich User Interfaces – Not only are you faced with the WEB, but now you have mobile devices with a lot of diversity. An Iphone does not process data the same way a Droid or a BlackBerry does.To the Web – the World is Flat - SAAS applications are global – they have to conform to many different languages, governments, regulations, and currencies of the international users.You need to understand where the problem is happening and who’s responsibility it is to fix it.
  14. Site Domains have increased from a few domains to 5-25 domains3rd party content requests have increasedPage sizes have increasedHosting locations have gone from a single location to many locationsSites now are expected to work on mobile devicesComplexity and distribution is increasing!
  15. Performance, why should you measure it?What is the nor that my clients see everyday?What happens to that norm during maintenance windows or increased load?What happens when we change the site? ( and believe me it will change and change often!)What happens when one of my 3rd party domains has a glitch? Is it really my fault? Should my SLA get impacted?What should I do in the future to make my performance and availability better? How about Load test from the Internet?
  16. Now lets look at some of the complexities in Testing, Monitoring and Supporting service levels.Remember today >> performance = expectations!If your site does not have acceptable performance it is essentially not usable and therefore not available
  17. Methods we use today to measure the end user experienceSynthetic testing (simulating visitor requests)Real Browser Monitoring (delivers a true picture of what users are experiencing)LoadTesting from outside the firewall
  18. You have to build performance in. So that means testing at every phase in the application life cycle. Test in dev, test in QA, test pre launch, test post launch, test in production. With the complexity we have discussed this testing needs to be coordinated, user centric (and browser centric) and done with tools that support the rapid development life cycle.Secondly test from the Internet or the cloud. Internal data center testing is no longer an option. I like to tell my customers who are struggling with seeing why they should test from the Internet, ….” no, only if you users or end customers aren't’ sitting in your data center”? If not, then you probably want to test where they actually live. There is no predictive model for performance of an application nor site over the Internet. You can’t approximate it. You can’t guestimate it.Thirdly test with a real browser……If the browser is now a platform….and so much is dependant on the client side processing, rending, that is happening there…you can’t test with non browser based technologies. I won’t call out names here but some of the mostly commonly used tools to do performance testing are still living in a 1990’s paradigm of request response, content and images. They are non browser based and therefore are missing in some cases 50% or more of the user experience.Finally, capture the right metrics. Lookat the right things…..the things that really impact users.It would be expensive for companies to set up and maintain dozens of their own servers in various countries and carriers.Why use an independent third party service like Keynote?Cost No setup timeViewed as impartialCan track your site against your competitorsVisibility into backbone healthNon intrusive
  19. Make use of an on demand SAAS external testing service such as Keynote for Web and Mobile applications!LoadTest and monitor from the Internet!Run some of the same measurements inernaly and external for faster triage and understanding.Test from the internet during development!Use a non-biased 3rd party for testing – this adds credibility to your SLA’s!Deliver the Service you promised and which your customers expect!