12
Inside This Issue Vol. 1, No. 3 January 2009 Performance Challenges PDC Highlights Get Ready for Azure Learn More: Claims-Based Identity, ASP.NET 3.5, Silverlight 2.0 & SharePoint Workflows Realize Savings with Microsoft Products and Solutions Windows 7 Internet Explorer 8 Blocker Toolkit Microsoft Support Policy for Virtualization Upcoming Tech Talks and Local Events Visit Our Blog Performance Challenges for a Social Networking Application A large Microsoft global ISV partner is developing a social networking application to serve 400,000 global users. These users join special membership programs to participate in the community for sharing information and basic social networking activities, such as contact lists and providing comments for postings. The application is built on top of the Microsoft Office SharePoint Server (MOSS) 2007 as a content repository and its personalization features provided by the Microsoft SharePoint Shared Services. To develop a social networking application having the same rich features provided by MOSS 2007 from the ground up requires too much effort in time and financial investment; leveraging MOSS is the right choice for their solution. Their application also uses WCF for their service-oriented middle-tier application that retrieves data from MOSS 2007 through the object model and delivers it to the requesting client application. SharePoint databases are stored in SQL Server 2005 on SAN storage. This application is part of a bigger application that aggregates information from other sources and presents that information in a unified ASP.NET website. Functionally, the application works well. However, there are certain features of the application that take very long to execute. For example, it takes 26 seconds or longer to retrieve a list of contacts which are stored in the Shared Services My Colleagues group. The MOSS 2007 Server farm also experiences longer than expected times for both incremental and full crawls. Here is some background information regarding the application data: Database size = 130 GB Number of content databases for My Sites = 10 Number of application pool running all the My Sites = 1 Number of user profiles = 327,000 and growing to 400,000 or more Number of blog posts = 10,000,000 and growing Number of comments = 10 x # of blog posts => 100,000,000 posts Number of contacts per user = 500 Number of items in People / Groups / My Colleagues = 500 x 400,000 => 200,000,000 The Service The partner engaged Microsoft US Premier Partner ISV to help assess the performance problems in their application, provide guidance for using the SharePoint Object Model to efficiently access the data, provide guidance on best practices for their SharePoint configurations, and provide some guidance for planning for scalability as their data grows. Members from the ISV team engaged and embarked upon a two week assignment at the partner’s site. (continued) PDC Highlights If you missed some of the sessions at the PDC (Professional Developer’s Conference) or if you were unable to attend this year, you can still watch the PDC sessions online . You can also attend one of the MSDN Developer Conference events in your area to catch the best of the PDC. Don’t miss the sessions for Windows Azure , our cloud operating system that with the Azure Services Platform offers a full application environment for the future of Software + Services. Get Ready for Azure Azure is a complete platform for distributed computing designed to increase your IT agility and deliver powerful new integration capabilities for users, applications, data, and devices. Azure, and cloud computing in general, is certain to have a profound impact on the IT industry, and change the way software is designed, developed, tested, and accessed. Both in the enterprise and with consumers, spanning mobile devices to desktop computers to server farms, Microsoft is investing heavily in R&D and preparing to launch a striking new wave of innovation. Microsoft Live Services already leads the industry with over 460 million users and now Azure is defining a new roadmap for the future. Microsoft wants to help you get a jumpstart on this opportunity by learning Azure technologies and lead the industry. We are currently developing a readiness program for our ISV customers. Watch for details and nomination requests!

Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Inside This Issue

Vol. 1, No. 3 January 2009

Performance Challenges • PDC Highlights • Get Ready for Azure Learn More: Claims-Based Identity, ASP.NET 3.5, Silverlight 2.0 & SharePoint Workflows

Realize Savings with Microsoft Products and Solutions • Windows 7 Internet Explorer 8 Blocker Toolkit • Microsoft Support Policy for Virtualization

Upcoming Tech Talks and Local Events

Visit Our Blog

Performance Challenges for a Social Networking Application

A large Microsoft global ISV partner is developing a social networking application to serve 400,000 global users. These users join special membership programs to participate in the community for sharing information and basic social networking activities, such as contact lists and providing comments for postings. The application is built on top of the Microsoft Office SharePoint Server (MOSS) 2007 as a content repository and its personalization features provided by the Microsoft SharePoint Shared Services. To develop a social networking application having the same rich features provided by MOSS 2007 from the ground up requires too much effort in time and financial investment; leveraging MOSS is the right choice for their solution. Their application also uses WCF for their service-oriented middle-tier application that retrieves data from MOSS 2007 through the object model and delivers it to the requesting client application. SharePoint databases are stored in SQL Server 2005 on SAN storage. This application is part of a bigger application that aggregates information from other sources and presents that information in a unified ASP.NET website. Functionally, the application works well. However, there are certain features of the application that take very long to execute. For example, it takes 26 seconds or longer to retrieve a list of contacts which are stored in the Shared Services My Colleagues group. The MOSS 2007 Server farm also experiences longer than expected times for both incremental and full crawls. Here is some background information regarding the application data:

Database size = 130 GB Number of content databases for My Sites = 10

Number of application pool running all the My Sites = 1

Number of user profiles = 327,000 and growing to 400,000 or more Number of blog posts = 10,000,000 and growing

Number of comments = 10 x # of blog posts => 100,000,000 posts Number of contacts per user = 500

Number of items in People / Groups / My Colleagues = 500 x 400,000 => 200,000,000

The Service

The partner engaged Microsoft US Premier Partner ISV to help assess the performance problems in their application, provide guidance for using the SharePoint Object Model to efficiently access the data, provide guidance on best practices for their SharePoint configurations, and provide some guidance for planning for scalability as their data grows. Members from the ISV team engaged and embarked upon a two week assignment at the partner’s site.

(continued)

PDC Highlights

If you missed some of the sessions at the PDC (Professional Developer’s Conference) or if you were unable to attend this year, you can still watch the PDC sessions online. You can also attend one of the MSDN Developer Conference events in your area to catch the best of the PDC.

Don’t miss the sessions for Windows Azure, our cloud operating system that with the Azure Services Platform offers a full application environment for the future of Software + Services.

Get Ready for Azure Azure is a complete platform for distributed computing designed to increase your IT agility and deliver powerful new integration capabilities for users, applications, data, and devices. Azure, and cloud computing in general, is certain to have a profound impact on the IT industry, and change the way software is designed, developed, tested, and accessed. Both in the enterprise and with consumers, spanning mobile devices to desktop computers to server farms, Microsoft is investing heavily in R&D and preparing to launch a striking new wave of innovation. Microsoft Live Services already leads the industry with over 460 million users and now Azure is defining a new roadmap for the future. Microsoft wants to help you get a jumpstart on this opportunity by learning Azure technologies and lead the industry. We are currently developing a readiness program for our ISV customers. Watch for details and nomination requests!

Page 2: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Learn More: Claims-Based Identity, ASP.NET 3.5, Silverlight 2.0 and SharePoint Workflows

Developing Claims-Based Identity Systems (Briefing)

Get on board with Geneva today!

Most developers are not security experts and many feel uncomfortable being given the job of authenticating, authorizing, and personalizing experiences for users. It’s not a subject that has been traditionally taught in computer science curriculum, and there’s a long history of these features being ignored until late in the software development lifecycle.

It’s not surprising nowadays to see a single company with tens or hundreds of Web applications and services, many of which have their own private silo for user identities, and most of which are hardwired to use one particular means of authentication. Developers know how tedious it is to build identity support into each application, and IT pros know how expensive it is to manage the resulting set of applications.

One very useful step toward solving the problem has been to centralize user accounts into an enterprise directory. Commonly it’s the IT pro that knows the most effective and efficient way to query the directory, but today the task is typically left up to the developer. And in the face of mergers, acquisitions, and partnerships, the developer might be faced with accessing more than one directory, using more than one API. Cloud-based services and emerging SOA trends will also amplify these challenges.

As an application developer, by building claims-aware applications, you’ll spend less time worrying about where to find identity attributes for users and have more time to focus on building a great application that solves real business problems. By using claims, you’ll be able to personalize your applications more effectively, and implement important security features such as authorization and auditing, without committing to one particular authentication method in your application, or writing queries against a corporate directory.

By centralizing identity management in this fashion, IT pros can build the most efficient possible queries against their directories and give your application the identity details that it needs about users. Becoming claims-aware means your application is able to support single-sign-on and identity federation requirements with little or no change to your code. With the announcement of Microsoft code-named "Geneva" claims-based access platform, developers and their customers can now simplify user access with a unified programming model that's open and interoperable. "Geneva" helps simplify user access for developers by externalizing authentication and authorization logic from applications.

This course is a developer-focused briefing. Attendees will see presentations and demos, and connect with Microsoft staff for questions and answers about identity. We’ll discuss how to develop claims-based systems and an understanding of how to prepare for application development in a claims driven environment.

ASP.NET 3.5 for Developers (Workshop)

ASP.NET is a unified Web development model that includes the services necessary for you to build enterprise-class Web applications with a minimum of coding. ASP.NET is part of the .NET Framework, and when coding ASP.NET applications you have access to classes in the .NET Framework. You can code your applications in any language compatible with the Common Language Runtime (CLR), including Microsoft Visual Basic, Visual C#, JScript, and Visual J#. These languages enable you to develop ASP.NET applications that benefit from the common language runtime, type safety, inheritance, and so on.

While ASP.NET is not a new platform, the latest release of ASP.NET 3.5 and Visual Studio® 2008 bring great new functionality around Web development and design that makes building standards based, next generation Web sites easier than ever. From the inclusion of ASP.NET AJAX into the runtime, to new controls, the new LINQ data capabilities, to improved support for CSS, JavaScript and others, Web development has taken a significant step forward.

The recent shipment of Service Pack 1 for the .NET Framework 3.5 has also added a number of significant new features to the ASP.NET platform, including ASP.NET Dynamic Data, URL Routing, new AJAX extensions, as well as ADO.NET Dynamic Data and ADO.NET Data Services.

We are offering a three day technical training event for developers and architects, focusing on developing ASP.NET solutions using the powerful features and components of the .NET 3.5 Framework SP1. The new capabilities of the platform will be explored with interactive lectures, demos, and hands-on-labs learning experience.

Customers who need to leverage the latest capabilities of the ASP.NET platform will benefit from this course. Here, you will learn about all the major features of Visual Studio 2008 and ASP.NET 3.5 as well as the latest SP1 features. You will learn about the latest preview release of ASP.NET MVC as well as how to use the recently released ADO.NET Entity Framework and ADO.NET Data Services to simplify your data access, as well as speed your time to deliver high quality solutions.

Page 3: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

At the end of the course, you will be familiar with:

Visual Studio 2008 ASP.NET Developer Enhancements New 3.5 Data Controls

ASP.Net 3.5 AJAX Enhancements

ASP.NET Dynamic Data

ASP.NET Routing and MVC ADO.NET Entity Framework

ADO.NET Data Services

Silverlight

Silverlight 2.0 for Developers (Workshop)

Microsoft® Silverlight™ is a cross-browser, cross-platform, and cross-device plug-in that delivers next generation .NET-based media experiences. Silverlight delivers this through rich interactive applications for the Web and mobile devices using Expression® Studio and Visual Studio®. It helps designers and developers to effectively leverage existing skills and light up the Web of tomorrow.

Microsoft Silverlight helps you overcome today’s media challenges, differentiate yourself from competition, and delight your customers. Microsoft brings prospective Silverlight 2 developers a three-day instructor-led training course that may be customized at customer request to focus on particular areas (e.g. more or less focus on using Expression Blend™) . The course can also be customized to focus on the delivery of a particular application with the flexibility to augment the course with a consulting engagement involving architectural assistance or proof-of-concept development.

At the end of the course, you will be able to:

Understand the purpose and architectural role of Silverlight 2 and design a Silverlight 2 application

Design the user interface of a Silverlight application using a variety of tools: Expression Blend Expression, Visual Studio 2008 and text editing of XAML.

Customize existing and develop new UI controls

Write Visual C# code to support UI event handling; set up data binding with business objects and communication with server Web services, browser script and HTML elements; access local storage

SharePoint - Developing Workflow Solutions (Workshop)

Microsoft Windows SharePoint Services provides a robust, customizable work environment for users to create, collaborate, and store valuable business information through workflow. The workflow is flexible enough to model both the system functions and the human actions necessary for the workflow to complete.

Create workflows that are as simple or complex as your business processes require. You can create workflows that the user initiates, or workflows that Windows SharePoint Services automatically initiates based on some event, such as when an item is created or changed.

We are offering a three day technical training event for developers and architects, focusing on developing Workflow solutions with SharePoint (WSS 3.0 / MOSS 2007) using the Workflow Foundation component of the .NET 3.5 Framework. Windows Workflow Foundation is an extensible programming model with runtime components for building solutions on the Windows platform. The extensions provided by Microsoft for SharePoint activities will also be explored.

Customers who desire to add business processing workflow capability to their SharePoint lists and document libraries will benefit from this course. Here, you will learn about all the major features of implementing workflows within SharePoint and what is provided out of the box. You will also learn to create workflows with Office SharePoint Designer and within Visual Studio 2008. You will gain experience in using activities provided in the base activity library of the Windows Workflow Foundation, building your own activities, and also using activities provided by Microsoft that are specific to SharePoint implementations.

At the end of the course, you will be familiar with:

Introduction to Windows Workflow Foundation

Building Custom Activities

SharePoint Workflow Terminology

Creating Office SharePoint Designer Workflows

Creating SharePoint Workflows with Visual Studio

Creating Rules-Driven Workflows

Administration and Troubleshooting of SharePoint Workflows

If you would like to learn more about these services or other services available to you via your MSPA agreement, contact your Technical Account Manager (TAM). Don’t have MSPA? Contact us today for more information!

Page 4: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Realize Savings with Microsoft Products and Solutions

Without a doubt, the current economic situation is a topic that is on everyone’s mind. The one question that is consistently being asked by our customers and partners is, “How can Microsoft help save our company money?” The depth and breadth of our products and solution offerings can be extremely beneficial, especially in times such as these.

The list below is just a sampling of ways that Microsoft can help your company realize savings.

Deploy virtualization. Reduce server hardware needs with Windows Server Hyper-V. Learn more about a company that deployed Windows Server 2008 with Hyper-V technology and Microsoft System Center Virtual Machine Manager 2008 to reduce server costs in its data center and find a way to cost effectively and securely place and manage servers in its branch offices.

Consolidate vendors and reduce database total cost of operations with the Application Platform Agreement.

Lower desktop deployment and management costs by deploying Microsoft Desktop Optimization Pack and Application Virtualization. Learn more about a company that adopted a new solution based on Microsoft® Application Virtualization to manage its client software more efficiently.

Realize a significant cost reduction for server ownership by improving data center operations management with Microsoft System Center. Learn more about how a company, due to a downturn in automobile sales in the US, leveraged Microsoft System Center to ultimately reduce software deployment time by 50% and streamline help-desk support.

Consolidate suppliers and product purchasing through the Microsoft Server Client Access License (CAL) Suites

Reduce travel and communications costs with Microsoft Unified Communications solutions

Reduce costs and improve security with standardized configurations of Windows desktops, servers and mobile devices that optimize infrastructure. Learn more about optimizing your existing IT investments.

Leverage Microsoft Financing for affordable and predictable IT purchasing

Proper Project and Portfolio Management gives organizations visibility into areas where unnecessary costs can be eliminated. Learn more about a company that, by deploying the Microsoft® Office Enterprise Project Management Solution, improved collaboration and reporting and increased productivity by 15%.

Broaden your skills and knowledge by using your Microsoft Software Assurance Benefits for Training Vouchers, Desktop Deployment Planning Services, Home Use Program and eLearning.

Use your MSPA to learn new products and technologies, gain advice and recommendations from our consultants and architects, and engage us in your project planning, development and deployment phases… all of which will save you time, effort and money.

Windows 7

You may know that at last week’s Consumer Electronics Show, Steve Ballmer announced the release of Windows 7 Beta. This is the first widely available public beta for Windows 7. The references below provide information on Windows 7: you can download the beta and review information about the new features.

Download the Windows 7 Beta.

Test for compatibility: 1. Vista Compatibility: Insure your application is compatible with Windows Vista; that is the best way to

prepare for Windows 7. 2. Developer References: Check out the Windows 7 Application Quality Cookbook to help with this. Early

application testing will ensure a smooth migration. 3. Review the Windows 7 Developer guide, and optimize performance using the Windows Performance Toolkit.

Innovate with Windows 7: Get logo-certified. Review some of the interesting features on the Channel 9 series of videos on Windows 7 which provide a great learning experience.

The E7 blog (Engineering Windows 7)

The Windows 7 Blog for Developers for deep technical content.

Page 5: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Internet Explorer 8 Blocker Toolkit

Background

Windows Internet Explorer 8 will be distributed to end-users via Automatic Updates and the Windows Update and Microsoft Update sites. Enterprises wishing to manage the way in which Windows Internet Explorer 8 is deployed to their organization can use the Windows Internet Explorer 8 Blocker Toolkit to prevent users from installing IE8 through Automatic Update.

Support Overview

Windows Internet Explorer 8 will be available for users of the 32-bit and 64-bit versions of Windows Vista, Windows XP SP2, Windows Server 2008 and Windows Server 2003 SP2. For Windows Vista and Windows Server 2008, the update will be listed as Important. For Windows XP and Windows 2003, the update will be listed as High Priority. Users will be offered the upgrade if they have Automatic Updates enabled or if they perform a manual scan for updates using the “Express” install option on the Windows Update or Microsoft Update sites. Windows Internet Explorer 8 will also be offered as a recommended updated to any user who performs a manual update scan on the Windows Update and Microsoft Update sites using the “Custom” install option.

Distribution of Windows Internet Explorer 8 via Automatic Updates will begin slowly and will take several months to complete. End-users can expect to be offered the upgrade to Internet Explorer 8 at any time in the months following the release of Windows Internet Explorer 8.

Many enterprise customers will want to control how and when Windows Internet Explorer 8 is deployed to their organization through Automatic Updates. Microsoft has released a Blocker Toolkit and has articulated a series of options IT administrators can implement to control how Windows Internet Explorer 8 is deployed.

Resources IE Blog IE Blocker Announcement IE8 Blocker Toolkit FAQ IE8 Blocker Toolkit Download

If you need further information or clarification from Microsoft, please contact your Technical Account Manager.

Microsoft Support Policy for Virtualization

Background

With the development and deployment of hardware virtualization technologies, Microsoft recognized the need to develop a support framework for Microsoft operating systems and server based applications running in virtualized environments. To this end, Microsoft launched the Server Virtualization Validation Program (SVVP).

Customers running Microsoft software in a validated third-party virtualization solution benefit by being fully supported pursuant to the application’s specific support policy. This communication is an overview of the support provided to Premier customers running Microsoft software in virtualized environments.

Support Overview

Premier Customers

SVVP Validated Solutions Non-Validated Solutions

Microsoft supports Microsoft server software that is running in the supported virtualization environments that are listed in the "More Information" section in KB 957006. This support is subject to the Microsoft Support Life-Cycle policy.

Please review KB Article 957006 for additional information.

For Microsoft customers with Premier-level support running non-Microsoft hardware virtualization software from vendors with which Microsoft does not have an established support relationship that covers virtualization solutions, Microsoft will investigate potential issues with Microsoft software running together with non-Microsoft hardware virtualization software.

Please review KB article 897615 for additional information.

Page 6: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

SVVP Program

The Server Virtualization Validation Program (SVVP) is open to any vendor which provides a machine virtualization solution that hosts Windows Server 2008, Windows 2000 Server Service Pack 4 and Windows Server 2003 Service Pack 2 and subsequent service packs. The virtualization solution can either be hypervisor-based or a hosted solution. The program enables vendors to validate various configurations so that customers of Windows Server can receive technical support in virtualized environments.

Customers with validated solutions running on server hardware Certified for Windows Server 2008, with the same validated processor architecture, will benefit from the support provided by Microsoft as part of the regular Windows Server technical support framework.

The Server Virtualization Validation Program is not a logo program, rather a reference that companies and customers will be able to use in conjunction with their validated solutions.

Virtualization Resources: Server Virtualization Validation Program (SVVP) Third Party virtualization products that have passed the SVVP requirements Server hardware certified or designed for Windows Server 2008 Virtualization TechCenter General Virtualization Information Hyper-V Support Team Blog Hyper-V Forum on TechNet Hyper-v Product site

If you need further information or clarification from Microsoft, please contact your Technical Account Manager.

Page 7: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Upcoming Tech Talks and Local Events

1/19/09 9:00 AM PST - ADO.NET 3.5 SP1 - Entity Framework and Data Services

The ADO.NET Entity Framework is the next evolution of ADO.NET, raising the level of abstraction without significant impact to the application code. Rather than coding against rows and columns, the ADO.NET Entity Framework allows the definition of a higher-level Entity Data Model over your relational data. ADO.NET Data Services provides a framework to easily build REST-style applications using a comprehensive set of .NET libraries and client components, accessing data through uniform URI syntax and using standard HTTP verbs to operate on the resource. Join the session to learn modern data access strategy (new programming models and productivity tools) over the traditional data sources using ADO.NET 3.5 SP1.

Upcoming MSPA Tech Talks Note: Dates and topics are subject to change. Contact your TAM for more details.

1/19 ADO.NET 3.5, Entity Framework and Data Services

2/2 Windows Workflow 3.5

2/16 BI for Developers

3/2 Microsoft Azure Services Platform - An Overview

3/16 Office 2007 and XML

3/30 MVC

4/13 ASP.NET Dynamic Data

Presenter:

Rajan Dwivedi, Application Development Consultant (ADC), Microsoft Corporation

Rajan Dwivedi has worked in a variety of technical, business and advisory roles - with over 13 years of total experience in IT Industry. As an ADC, in Microsoft since 2001, Rajan has focused on ISVs, Web 2.0 and Enterprise Integration space. He is passionate about enabling customers making the right decisions about the technology that delivers fast ROI and successful projects. Currently, Rajan has been engaged with Microsoft Product Groups with emerging online technologies. He has been in Dallas for 10 years and loves to play cricket and chess in his spare time.

Cost of participation: Your services contract will be decremented 1 hour for your company’s participation in one of our scheduled Tech Talks. Your Technical Account Manager will provide you with the dial-in and live meeting information as the Tech Talk date approaches.

Did you miss the PDC?

We’re bringing the PDC to you! For just $99 you’ll get the best of the PDC in your own backyard and hear all of the exciting announcements around the Azure Services Platform and Windows 7. Other sessions include the latest developments in .NET, Silverlight, Surface, Parallel Programming, Live Mesh, and more.

Register today to stay current in an ever-competitive job market, enhance your skills and gain access to the next generation of tools and technology.

Experience the Azure Services Platform for Cloud Computing. Create applications that seamlessly bridge PC, Web, and phone

Be among the first to see Windows 7. See the latest advances in Multi-Touch Application Development

Take your .NET skills to the next level. See sessions on WPF 4.0, Silverlight 2, ASP.NET 4.0, Parallel Programming, Live Mesh and more

For a detailed agenda and more information about the conference and registration, visit the MSDN Developer Conference site.

Date City

1/20/09 New York, NY

1/22/09 Boston, MA

1/22/09 Detroit, MI

1/26/09 Dallas, TX

2/19/09 San Francisco, CA

Page 8: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Workshops Open for Registration

With your Microsoft Services agreement, you have access to all of the open workshop registrations that we have throughout the US. The following table lists workshops that are currently open for registration. Workshop registration usually closes two weeks prior to the start date. Your TAM (Technical Account Manager) can register you for any of the workshops that are listed.

Open registrations are an excellent learning opportunity for situations where you have a handful of individuals that need to ramp up on Microsoft products and technologies. If you have four or more individuals interested in the same training, you might want to consider a dedicated training at your location. All of the workshops listed below (and more!) can be provided as dedicated deliveries at the location of your choice. Contact your TAM for more details.

Workshop Title State City Start Date End Date

Active Directory Troubleshooting v2 New Jersey Iselin 3/10/2009 3/13/2009

Active Directory Troubleshooting v2 Pennsylvania Malvern 2/24/2009 2/27/2009

Active Directory Troubleshooting v2 Texas Austin 2/3/2009 2/6/2009

Active Directory Troubleshooting v2 Texas Irving 2/10/2009 2/13/2009 Advanced Administration Support and Troubleshooting of GPOs California Los Angeles 4/7/2009 4/9/2009 Advanced Administration Support and Troubleshooting of GPOs Missouri Saint Louis 3/3/2009 3/5/2009 Advanced Administration Support and Troubleshooting of GPOs Nebraska Omaha 2/10/2009 2/12/2009 Deploying and Managing Microsoft Office 2007 in the Enterprise California Los Angeles 1/27/2009 1/30/2009 Deploying and Managing Microsoft Office 2007 in the Enterprise California San Diego 3/17/2009 3/20/2009

Exchange Server 2007 - Migration District of Columbia Washington 3/10/2009 3/11/2009

Exchange Server 2007 - Migration Colorado Denver 3/24/2009 3/25/2009

Exchange Server 2007: Clustering Pennsylvania Pittsburgh 3/10/2009 3/13/2009

Exchange Server 2007: Clustering California Sacramento 2/17/2009 2/20/2009

Exchange Server 2007: Clustering New York New York 2/10/2009 2/13/2009

Microsoft Project 2007 Enterprise Project Management Georgia Alpharetta 2/10/2009 2/12/2009

Microsoft Project 2007 Enterprise Project Management California Los Angeles 2/3/2009 2/5/2009

MOSS 2007 Administration and Troubleshooting Virginia Reston 3/10/2009 3/13/2009

MOSS 2007 Administration and Troubleshooting New York New York 4/28/2009 5/1/2009

MOSS 2007 Administration and Troubleshooting California Los Angeles 3/10/2009 3/13/2009

MOSS 2007 Administration and Troubleshooting Texas Houston 3/3/2009 3/6/2009

MOSS 2007 Administration and Troubleshooting Florida Tampa 4/28/2009 5/1/2009

MOSS 2007 Administration and Troubleshooting Washington Issaquah 2/17/2009 2/20/2009

MOSS 2007 Administration and Troubleshooting Massachusetts Waltham 3/10/2009 3/13/2009

MOSS 2007 Administration and Troubleshooting District of Columbia Washington 1/27/2009 1/30/2009

MOSS 2007 Administration and Troubleshooting Colorado Denver 1/27/2009 1/30/2009

MOSS 2007 Administration and Troubleshooting Florida Fort Lauderdale 2/24/2009 2/27/2009

MOSS 2007 Administration and Troubleshooting Texas Austin 1/27/2009 1/30/2009

MOSS 2007 Administration and Troubleshooting Utah Salt Lake City 2/10/2009 2/13/2009

MOSS 2007 Administration and Troubleshooting California Sacramento 2/3/2009 2/6/2009

SQL 2005 Performance Tuning & Optimization Massachusetts Waltham 4/7/2009 4/10/2009

SQL 2005 Performance Tuning & Optimization Texas Houston 2/17/2009 2/20/2009

SQL 2005 Performance Tuning & Optimization Georgia Alpharetta 2/24/2009 2/27/2009

SQL 2005 Performance Tuning & Optimization Colorado Denver 2/24/2009 2/27/2009

Page 9: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Workshop Title State City Start Date End Date

SQL Server 2005 Integration Services Connecticut Farmington 3/16/2009 3/20/2009

SQL Server 2005 Integration Services Texas Houston 3/24/2009 3/27/2009

SQL Server 2005 Integration Services California San Diego 2/3/2009 2/6/2009

SQL Server 2005 Integration Services California Los Angeles 2/10/2009 2/13/2009

SQL Server 2005 Integration Services Illinois Downers Grove 2/24/2009 2/27/2009

SQL Server 2005 Integration Services Oregon Portland 2/17/2009 2/20/2009

SQL Server 2005 Integration Services North Carolina Charlotte 2/17/2009 2/20/2009

SQL Server 2005 Integration Services Pennsylvania Pittsburgh 2/3/2009 2/6/2009

SQL Server 2005: For Administrators New York New York 2/24/2009 2/26/2009

SQL Server 2005: For Administrators District of Columbia Washington 2/10/2009 2/12/2009

SQL Server 2005: Reporting Services Nebraska Omaha 2/24/2009 2/27/2009

System Center Configuration Manager 2007 Concepts and Administration Missouri Saint Louis 4/28/2009 4/30/2009

System Center Configuration Manager 2007 Concepts and Administration New York New York 5/5/2009 5/7/2009

System Center Configuration Manager 2007 Concepts and Administration Texas Irving 3/24/2009 3/26/2009

System Center Configuration Manager 2007 Concepts and Administration Colorado Denver 3/17/2009 3/19/2009

System Center Configuration Manager 2007 Concepts and Administration California Los Angeles 2/24/2009 2/26/2009

System Center Configuration Manager 2007 Concepts and Administration Virginia Reston 4/14/2009 4/16/2009

System Center Configuration Manager 2007 Concepts and Administration Pennsylvania Malvern 4/14/2009 4/16/2009

System Center Operations Manager 2007 New York New York 3/10/2009 3/12/2009

System Center Operations Manager 2007 Texas Houston 2/10/2009 2/12/2009

System Center Operations Manager 2007 Nebraska Omaha 2/17/2009 2/19/2009

System Center Operations Manager 2007 Texas Austin 2/24/2009 2/26/2009

System Center Operations Manager 2007 District of Columbia Washington 2/24/2009 2/26/2009

System Center Operations Manager 2007 Minnesota Bloomington 1/27/2009 1/29/2009

System Center Operations Manager 2007 New Jersey Iselin 2/10/2009 2/12/2009

Troubleshooting and Supporting Microsoft Office 2007 Arizona Phoenix 2/24/2009 2/27/2009

Troubleshooting and Supporting Microsoft Office 2007 Florida Tampa 4/21/2009 4/24/2009

Win2k3 Automation & Admin using Scripting Illinois Downers Grove 1/26/2009 1/30/2009

Win2k3 Clustering Essentials New York New York 3/10/2009 3/12/2009

Windows Administration and Automation Using PowerShell Missouri Saint Louis 4/14/2009 4/17/2009

Windows Administration and Automation Using PowerShell Arizona Phoenix 4/14/2009 4/17/2009

Windows Administration and Automation Using PowerShell Utah Salt Lake City 3/17/2009 3/20/2009

Windows Administration and Automation Using PowerShell California San Francisco 3/3/2009 3/6/2009

Windows Administration and Automation Using PowerShell Virginia Reston 2/17/2009 2/20/2009

Windows Administration and Automation Using PowerShell Nebraska Omaha 3/17/2009 3/20/2009

Windows Administration and Automation Using PowerShell California Mountain View 2/3/2009 2/6/2009

Windows Administration and Automation Using PowerShell Texas San Antonio 3/24/2009 3/27/2009

Windows Administration and Automation Using PowerShell Texas Irving 2/24/2009 2/27/2009

Windows Administration and Automation Using PowerShell Texas Houston 4/21/2009 4/24/2009

Windows Administration and Automation Using PowerShell Colorado Denver 2/17/2009 2/20/2009

Windows Administration and Automation Using PowerShell California Irvine 1/27/2009 1/30/2009

Page 10: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Workshop Title State City Start Date End Date

Windows Administration and Automation Using PowerShell Florida Fort Lauderdale 3/10/2009 3/13/2009

Windows Administration and Automation Using PowerShell Georgia Alpharetta 5/12/2009 5/15/2009

Windows Administration and Automation Using PowerShell Minnesota Bloomington 2/10/2009 2/13/2009

Windows Administration and Automation Using PowerShell Indiana Indianapolis 2/10/2009 2/13/2009

Windows Administration and Automation Using PowerShell North Carolina Charlotte 2/3/2009 2/6/2009

Windows Administration and Automation Using PowerShell District of Columbia Washington 3/24/2009 3/27/2009

Windows Administration and Automation Using PowerShell Alabama Birmingham 4/21/2009 4/24/2009

Windows Administration and Automation Using PowerShell Pennsylvania Malvern 3/17/2009 3/20/2009

Windows Administration and Automation Using PowerShell Florida Tampa 2/10/2009 2/13/2009

Windows Administration and Automation Using PowerShell California San Diego 3/24/2009 3/27/2009

Windows Critical Problem Management New York New York 3/24/2009 3/25/2009

Windows Critical Problem Management California San Diego 2/17/2009 2/18/2009

Windows Server 2008 Directory Services Workshop Texas Irving 3/31/2009 4/3/2009

Windows Server 2008 Directory Services Workshop Colorado Denver 3/10/2009 3/13/2009

Windows Server 2008 Directory Services Workshop Florida Tampa 2/17/2009 2/20/2009

Windows Server 2008 Directory Services Workshop Indiana Indianapolis 1/27/2009 1/30/2009

Windows Server 2008 Directory Services Workshop Arizona Phoenix 3/17/2009 3/19/2009

Windows Server 2008 Directory Services Workshop Connecticut Farmington 3/31/2009 4/3/2009

Windows Server 2008 Directory Services Workshop Texas Austin 3/24/2009 3/27/2009

Windows Server 2008 Directory Services Workshop Oregon Portland 3/24/2009 3/27/2009

Windows Server 2008 Directory Services Workshop Washington Issaquah 3/17/2009 3/20/2009

Windows Server 2008 Directory Services Workshop Florida Fort Lauderdale 2/10/2009 2/13/2009

Windows Server 2008 Directory Services Workshop California Sacramento 2/24/2009 2/27/2009

Windows Server 2008 Directory Services Workshop New York New York 3/31/2009 4/3/2009

Windows Server 2008 Directory Services Workshop North Carolina Charlotte 3/10/2009 3/13/2009

Windows Server 2008 Directory Services Workshop Virginia Reston 3/10/2009 3/13/2009

Windows Server 2008 Directory Services Workshop New York New York 1/27/2009 1/30/2009

Windows Server 2008 Directory Services Workshop California San Francisco 1/27/2009 1/30/2009

Windows Server 2008 Directory Services Workshop Texas Houston 2/24/2009 2/27/2009

Windows Server 2008 Directory Services Workshop Massachusetts Waltham 2/10/2009 2/13/2009

Windows Server 2008 Directory Services Workshop Pennsylvania Malvern 2/3/2009 2/6/2009

Windows Server 2008 Directory Services Workshop Colorado Denver 2/3/2009 2/6/2009

Windows Sharepoint Services 3.0 Developer California Irvine 2/10/2009 2/13/2009

Page 11: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Performance Challenges for a Social Networking Application (Continued from Page 1)

This partner has used a third-party .NET profiling tool to capture the application execution times and call stacks. The profiling tool exports to an XML file which Excel can import for easier sorting and filtering capabilities. After analyzing the logs, it was not conclusive where the bottlenecks were. One log showed the calls to SharePoint OM (object model) consumed 72% which was different from the second log which was only 24%. There appeared to be crawling and SQL Profiling activities that were interfering with the application logging process. No additional application logging was done during this engagement and the test environment was quite fluid that having a clean logging activity was not possible given what the partner had. One conclusion derived from the analysis was that WCF, as a communication technology, was not a bottleneck. While the processing inside the WCF middle tier application is not a bottleneck, the entire WCF middle tier application indirectly contributed to the bottleneck since it called the SharePoint OM.

Another tool that we used to identify bottlenecks was the SQL Profiler. There were two SQL Profiler logs captured at the same time as the .NET profiling logs. The first SQL Profiler log showed that 81% of the time was consumed by SharePoint, compared to the second log which showed only 48% consumption. The application test scenarios were the same for both logs. We would expect similar results, but they were different. Again, the logging process was impacted by other activities happening in the test environment.

We also used the tool SQLIO to provide performance data for the disk subsystem on the servers. The results provided some clues into how effective the disk subsystems were and also the statistics provided a baseline to compare to during performance tuning.

We ran MOSS Best Practice Analyzer which checked for some best practices for the SharePoint configurations like configuring Dedicated Front-end Web Server for Crawling, Trusted Locations for Shared Services, Incoming Email Settings, etc. This tool was not quite useful in finding the bottlenecks, but it did provide some errors and warnings on basic settings about their instal lation which can be tweaked to further optimize their environment.

The SQL Best Practice Analyzer provided many recommendations for fine-tuning the partner’s SQL Server 2005 installation. One recommendation was to work with hardware vendor to configure the disk drives for optimal settings for aligning sectors for drive partitions. Incorrect alignment settings can force the hard drive to do multiple operations for one read or write access. When you have thousands of operations to do for large database applications such as this one, this can significantly add up. The report identified other areas for improvement of the database installation.

A performance monitor log was captured; this log showed us that the CPU usage spiked while running 32-bit software, and network bandwidth spiked while running 64-bit software. Further analysis of this log would provide more clues in the actual working of the system.

At the end of this engagement, we provided a list of recommendations and suggestions to the partner that would improve the application performance.

Some Recommendations

Engage a Microsoft Performance Test Lab for further troubleshooting and fine-tuning the application and for figuring out the optimal configurations for SQL Server and SharePoint

Use the biggest physical cluster size for drive partitions allowed by NTFS, which is 64KB

Use 64-bit hardware and software for all physical servers

Work with hardware vendor to optimize the SAN configurations for the appropriate level of access ratios for read and write

Use 1 GBPS network instead of 100 MBPS

Ensure all servers have adequate CPU power

Use multiple Shared Services Providers to extend the limitations of SharePoint as outlined in the article Plan for software boundaries (Office SharePoint Server).

Cache data and/or objects at the requesting client and the middle tier using ASP.NET caching facility such as HTTP Objects like session or application, objects in System.Web.Caching namespace, a third-party ScaleOut, or Microsoft distributed caching technology Velocity once it’s released

Some Suggestions

Consider using hierarchical multi-farm multi-geographical topology for SharePoint for better scalability and reduced latency by having users accessing the data center closest to their home location

Use SPSiteDataQuery to query multiple SharePoint lists with a single call to the SharePoint API Use TCP rather than HTTP binding when the WCF application experiences communication problem with transmitting huge

amount of data

Consider using solid state memory for tempdb

Page 12: Performance Challenges for a Social Networking Application ......Silverlight Silverlight 2.0 for Developers (Workshop) Microsoft® Silverlight™ is a cross-browser, cross-platform,

Impact of the Service

At the end of this two-week engagement, we delivered a comprehensive document reporting the assessment and recommendations and suggestions for the partner to follow and a path for them to scale the application. The application the partner is developing is on the edge of the limits of MOSS 2007 as an application platform and its performance capabilities.

A challenge we ran into was the ability to iterate through the recommendations and suggestions to see improvements in real time. Implementing the recommendations does take time. This compounded with an environment that was highly in demand to be controlled was a factor in the decision for us to focus on identifying the issues and getting recommendations and suggestions during the engagement. The partner would implement those recommendations and suggestions at a later time. A challenge with this approach is that we cannot measure the performance gains due to the recommendations and suggestions. A performance lab at a Microsoft facility is the optimal solution for fine-tuning an application real-time and determining the best configurations for SQL Server and SharePoint.

This engagement is a sampling of some the challenges that our partners face with their application and their application architecture. Our objective is to provide reasonable efforts in identifying those challenges, recommendations and suggestions on how to mitigate those challenges. One thing that is clear with our partner is that we will be standing by them and work through the issues with them until they are completely satisfied with our service.

Ted Heng, Senior ADC (Application Development Consultant), Microsoft Corporation

Ted has been in the software industry for many years and is currently specializing in architecture reviews, building POCs, and providing guidance on WCF and SharePoint. Throughout his career, he has developed and architected many applications including Encarta Language Learning, Managing Your Money customized for major banks, route accounting application, enterprise tools, ecommerce websites and Windows Mobile applications. Ted is passionate about helping customers achieving their project goals whether helping them with answering some technical questions or doing a thorough architecture review.

Special thanks to the following contributors for the contents of this

newsletter!

Ted Heng, Bryan Lamos, Alok Srivastava, Joshua Trupin and

Lori Turner

If you are an ISV (Independent Software Vendor) and do not already have the benefits of an MSPA (Microsoft Services Partner Advantage) agreement, you can learn more about our services here. We are always available to talk with you and discuss this program in more detail: simply direct your inquiries to [email protected].