DONE-08 Sizing and Performance Tuning N-Tier Applications Mike Furgal Performance Manager Progress Software

Slides:



Advertisements
Similar presentations
Implementing Tableau Server in an Enterprise Environment
Advertisements

WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
Numbers, We don’t need no stinkin’ numbers Adam Backman Vice President DBAppraise, Llc.
OPS-7: Migrating your Distributed Application from V9 to OpenEdge ® 10 with (Almost) No Downtime Roy Ellis Principal QA Engineer.
DEV-13: You've Got a Problem, Here’s How to Find It
©Company confidential 1 Performance Testing for TM & D – An Overview.
1 I/O Management in Representative Operating Systems.
Server issues How to approach the design of servers.
Chapter 9 Overview  Reasons to monitor SQL Server  Performance Monitoring and Tuning  Tools for Monitoring SQL Server  Common Monitoring and Tuning.
DEV-14: Understanding and Programming for the AppServer™
Presented by Jacob Wilson SharePoint Practice Lead Bross Group 1.
What’s new in Progress Developer Studio for OpenEdge 11.0?
The Client/Server Database Environment
Backup & Recovery 1.
© 2011 IBM Corporation 11 April 2011 IDS Architecture.
Scalability By Alex Huang. Current Status 10k resources managed per management server node Scales out horizontally (must disable stats collector) Real.
1 The Virtual Reality Virtualization both inside and outside of the cloud Mike Furgal Director – Managed Database Services BravePoint.
Database Storage Considerations Adam Backman White Star Software DB-05:
Data Center Infrastructure
SOA-06: Get On the Bus with the OpenEdge ® Adapter for Sonic ESB ® David Cleary Principal Software Engineer, Progress.
DONE-10: Adminserver Survival Tips Brian Bowman Product Manager, Data Management Group.
1 Progress Software’s OpenEdge Platform Which database is right for your environment? Simon Epps.
Top Performance Enhancers Top Performance Killers in Progress Dan Foreman Progress Expert
Performance Concepts Mark A. Magumba. Introduction Research done on 1058 correspondents in 2006 found that 75% OF them would not return to a website that.
Tim De Borger Principal Solution Consultant May 18 th, 2007 Tuning the ESB How to make the Bus drive faster.
Top 10 Performance Hints Adam Backman White Star Software
Strength. Strategy. Stability.. Progress Performance Monitoring and Tuning Dan Foreman Progress Expert BravePoint BravePoint
Managing Your Cross-Platform Data Keynote: The Power of 64 Speaker Name Here Date.
Chokchai Junchey Microsoft Product Specialist Certified Technical Training Center.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
Oracle Tuning Ashok Kapur Hawkeye Technology, Inc.
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
DEV-09: User Authentication in an OpenEdge™ 10.1 Distributed Computing Environment Michael Jacobs Development Architect.
Simulating a $2M Commercial Server on a $2K PC Alaa R. Alameldeen, Milo M.K. Martin, Carl J. Mauer, Kevin E. Moore, Min Xu, Daniel J. Sorin, Mark D. Hill.
ECE200 – Computer Organization Chapter 9 – Multiprocessors.
SOA-14: Deploying your SOA Application David Cleary Principal Software Engineer.
Achieving Scalability, Performance and Availability on Linux with Oracle 9iR2-RAC Grant McAlister Senior Database Engineer Amazon.com Paper
COMP-1: OpenEdge® Management Overview and Demo Principal Technical Support Engineer Cyril E. Gleiman.
Module 3 Planning and Deploying Mailbox Services.
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer, Progress Sonic.
Fast Crash Recovery in RAMCloud. Motivation The role of DRAM has been increasing – Facebook used 150TB of DRAM For 200TB of disk storage However, there.
Towards Dynamic Green-Sizing for Database Servers Mustafa Korkmaz, Alexey Karyakin, Martin Karsten, Kenneth Salem University of Waterloo.
SOA-02: Sonic SOA Products Overview Luis Maldonado Technical Product Manager Sonic Software.
INNOV-10 Progress® Event Engine™ Technical Overview Prashant Thumma Principal Software Engineer.
Process Architecture Process Architecture - A portion of a program that can run independently of and concurrently with other portions of the program. Some.
SONIC-3: Creating Large Scale Installations & Deployments Andrew S. Neumann Principal Engineer Progress Sonic.
Coupling Facility. The S/390 Coupling Facility (CF), the key component of the Parallel Sysplex cluster, enables multisystem coordination and datasharing.
DEV-8: AppServer ™ Mode Case Studies Simon Epps Solutions Engineer.
1 Chapter Overview Monitoring Access to Shared Folders Creating and Sharing Local and Remote Folders Monitoring Network Users Using Offline Folders and.
Maximizing Performance – Why is the disk subsystem crucial to console performance and what’s the best disk configuration. Extending Performance – How.
Background Computer System Architectures Computer System Software.
(re)-Architecting cloud applications on the windows Azure platform CLAEYS Kurt Technology Solution Professional Microsoft EMEA.
Configuring SQL Server for a successful SharePoint Server Deployment Haaron Gonzalez Solution Architect & Consultant Microsoft MVP SharePoint Server
No more waiting. Sponsors About me  Database Technology Specialist  MVP  Blogger  Author 3
1© Copyright 2015 EMC Corporation. All rights reserved. NUMA(YEY) BY JACOB KUGLER.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
242: Get Your Head in the Cloud!
Getting the Most out of Scientific Computing Resources
Understanding and Improving Server Performance
Getting the Most out of Scientific Computing Resources
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
DEV-25: You've Got a Problem, Here’s How to Find It
Boost Linux Performance with Enhancements from Oracle
Walking Through A Database Health Check
Managing Clouds with VMM
Admission Control and Request Scheduling in E-Commerce Web Sites
Simulating a $2M Commercial Server on a $2K PC
Troubleshooting Techniques(*)
SQL Server Performance Tuning
Hybrid Buffer Pool The Good, the Bad and the Ugly
Presentation transcript:

DONE-08 Sizing and Performance Tuning N-Tier Applications Mike Furgal Performance Manager Progress Software

2© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications D I S C L A I M E R Under Development n This talk includes information about potential future products and/or product enhancements. n What I am going to say reflects our current thinking, but the information contained herein is preliminary and subject to change. Any future products we ultimately deliver may be materially different from what is described here. D I S C L A I M E R

3© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Agenda n Overview of AppServer™ Configurations n Benchmark Methodology n AppServer Internals n Benchmark Results n Conclusions

4© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer™ Benefits n Partitions presentation logic from Business Logic n Ease of deployment of Business Logic n Business Logic is closer to the Data for complex operations n Security –File Permissions –Running Environment

5© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Agenda n Overview of AppServer Configurations n Benchmark Methodology n AppServer Internals n Benchmark Results n Conclusions

6© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Overview of AppServer Configurations n Machine Configurations n AppServer Configurations n NameServer

7© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Machine Configurations n 2 Server Machines (1-DB and 1-AppServer) –HP Itanium (rx4640) n 4 CPUs n 8 GB Memory n Storage Area Network (SAN) n 2 Client Machines –Used to drive the workload

8© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer Configurations n Stateless AppServer –Uses the least amount of resources –Supports the largest amount of users n AppServer and Database on the same machine (Shared Memory Connection) n AppServer on a dedicated machine

9© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications NameServer n Used to manage multiple AppServers n Ran test suite both with the NameServer and without the NameServer –Had no effect on performance since it’s just involved when making a connection.

10© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Agenda n Overview of AppServer Configurations n Benchmark Methodology n AppServer Internals n Benchmark Results n Conclusions

11© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Benchmarking Methodology n Scale OLTP Users –No think time –Each benchmark user  20 OLTP users n Measure response time –Stop when response time is longer than 2 seconds. n Make changes to the AppServer configuration only –Database is assumed to be tuned!

12© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Database Tuning n Before Image and Data extends spread across multiple disks n Appropriate -spin settings –200,000 spin tries n Appropriate –B setting –Tested with the data set cached in memory –Tested with ½ of the data set cached in memory n Appropriate Before Image cluster-size setting –Checkpoint every 2 minutes

13© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Benchmarking Methodology n Step 1: Run a test case n Step 2: Measure the performance n Step 3: Analyze the results n Step 4: Change 1 thing n Step 5: Go to Step 1 n Iterate on this process

14© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Workloads Tested n Multiple workloads tested n Database Workload –100 reads, 3 updates, 1 create n Business Logic Workload –200 DB Reads –200 Temp Table Creates and Updates –3 Database Updates –1 Database Create n No other activity on the machines

15© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Things to remember n Kernel Tuning –Decrease the OS Buffer Cache (dbc_max_pct) –Increase number of threads/process (nkthread) –Increase max open files/process (maxfiles) n Monitor AppServer Broker Memory Usage –Memory used for size of messages. Application specific –Each Agent adds 4 MB –Each connected client adds 100K n AppServer Agents memory usage –Similar to character clients memory usage

16© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications NUMA Considerations Memory BUS CPU Memory BUS CPU Node 1Node 2 High Speed Interconnect n Non Uniform Memory Access n Memory is split across nodes n Ideal to have all Self Service Processes on the same node as the Database Buffer Pool –Possible future enhancement for OpenEdge

17© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Agenda n Overview of AppServer Configurations n Benchmark Methodology n AppServer Internals n Benchmark Results n Conclusions

18© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer Processes oooooo oooooo Client 1 Client 3 Client n Client 1 Thread Client 1 Thread Client 1 Thread Client 2 Thread Client 1 Thread Client 3 Thread Client 1 Thread Client n Thread Client 2 AS Agent 1 AS Agent 2 AS Agent 3 oooooo AS Agent n AS 1 Thread AS 2 Thread AS 3 Thread oooooo AS 4 Thread Request 1 Request 2 Request 3 Request 4 oooooo Request n Request Queue Listener Thread

19© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer Request Queue oooooo oooooo Client 1 Client 3 Client n Client 1 Thread Client 1 Thread Client 1 Thread Client 2 Thread Client 1 Thread Client 3 Thread Client 1 Thread Client n Thread Client 2 AS Agent 1 AS Agent 2 AS 1 Thread AS 2 Thread Request 1 Busy Request 2 Busy Request 3 Waiting Request 4 Waiting Request 5 Waiting Request Queue Listener Thread

20© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer Properties n initialSrvrInstance –Number of initial AS Agents n srvrStartupTimeout –Time to wait for a free server before starting a new one [default is 3 seconds] n maxSrvrInstance –Total number of AS Agents n maxClientInstance –Max number of clients that can connect $DLC/properties/ubroker.properties [.README]

21© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer Properties n autoTrimTimeout –Time to wait before stopping idle AS Agent [default 15 minutes] n minSrvrInstance –Lowest Number of AS Agents n requestTimeout –Time a client waits for an Agent. If expired the client is disconnected $DLC/properties/ubroker.properties [.README]

22© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Agenda n Overview of AppServer Configurations n Benchmark Methodology n AppServer Internals n Benchmark Results n Conclusions

23© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications AppServer Agent “Think Time” AppServer Workload causes a Pause

24© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Database Workload Database Workload – 100 reads, 3 updates, 1 create

25© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Database Workload Database Workload – 100 reads, 3 updates, 1 create

26© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Business Logic Workload Business Logic – 100 DB Reads, 200 TT Creates/Updates

27© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Business Logic Workload Business Logic – 100 DB Reads, 200 TT Creates/Updates

28© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Agenda n Overview of AppServer Configurations n Benchmark Methodology n AppServer Internals n Benchmark Results n Conclusions

29© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Conclusions n Keeping the business logic near the data provides the best performance n A small number of Agents can handle many users –CPU bound workloads achieve best performance with 1 AppServer Agent per CPU –I/O Bound workloads require more AppServer Agents –If Agents are busy serving large requests then adding more Agents helps (can be managed dynamically). –May need to segment AppServers Agents for different uses (OLTP vs. Reporting) n Your Mileage May Vary

30© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Odds and Ends n Constantly looking for places to make performance improvements –64bit performance improvements n Removed the performance penalty for compatibility n Typically 35% penalty n 64bit r-code is now different than 32bit r- code in OpenEdge™ 10.1A

31© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Questions?

32© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications Thank you for your time!

33© 2005 Progress Software Corporation DONE-08 Sizing and Performance Tuning N-Tier Applications