Best Practices for AppServers & WebSpeed Operation

Slides:



Advertisements
Similar presentations
ADABAS to RDBMS UsingNatQuery. The following session will provide a high-level overview of NatQuerys ability to automatically extract ADABAS data from.
Advertisements

COM vs. CORBA.
Strength. Strategy. Stability. The Application Profiler.
The Premier Software Usage Analysis and Reporting Toolset CELUG Presentation – May 12, 2010 LT-Live : License Tracker’s License Server Monitor.
1 Dynamic DNS. 2 Module - Dynamic DNS ♦ Overview The domain names and IP addresses of hosts and the devices may change for many reasons. This module focuses.
Week 6: Chapter 6 Agenda Automation of SQL Server tasks using: SQL Server Agent Scheduling Scripting Technologies.
1 Microsoft Access 2002 Tutorial 9 – Automating Tasks With Macros.
ProTop version 3 – An open source Progress database performance monitor ProTop is a free, Open Source database monitor for Progress OpenEdge databases.
MCTS GUIDE TO MICROSOFT WINDOWS 7 Chapter 10 Performance Tuning.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 4 Installing and Configuring the Dynamic Host Configuration Protocol.
Unauthorized Reproduction Prohibited SkyPoint Alarm Integration Add-On Using OnGuard Alarms to create events in SkyPoint Also called ‘SkyPoint V0’ CR4400.
Scale Up Access to your 4GL Application using Web Services
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 5: Managing File Access.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 5: Managing File Access.
70-270, MCSE/MCSA Guide to Installing and Managing Microsoft Windows XP Professional and Windows Server 2003 Chapter Thirteen Performing Network.
Hands-On Microsoft Windows Server 2003 Administration Chapter 5 Administering File Resources.
70-270, MCSE/MCSA Guide to Installing and Managing Microsoft Windows XP Professional and Windows Server 2003 Chapter Nine Managing File System Access.
TEMP-TABLE Performance Tuning & Other Important Stuff
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 14 Server and Network Monitoring.
CLUSTER WEBLOGIC SERVER. 1.Creating clusters and understanding its concept GETTING STARTED.
DEV-14: Understanding and Programming for the AppServer™
Performance testing of Progress Appservers and a plug-in for Jmeter
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
1 PUG Challenge Americas 2015 Click to edit Master title style PUG Challenge USA 2015 Top Performance Enhancers & Destroyers Presented by: Dan Foreman.
1 Chapter Overview Creating Sites and Subnets Configuring Intersite Replication Troubleshooting Active Directory Replication.
A New Object Model for WebSpeed and HTTP
Ch 11 Managing System Reliability and Availability 1.
OPS-17: Utilizing Firewalls - In the Reign of Fire
DB-19: OpenEdge® Authentication Without the _User Table
DONE-10: Adminserver Survival Tips Brian Bowman Product Manager, Data Management Group.
MCTS Guide to Microsoft Windows 7
UNIX SVR4 COSC513 Zhaohui Chen Jiefei Huang. UNIX SVR4 UNIX system V release 4 is a major new release of the UNIX operating system, developed by AT&T.
Top Performance Enhancers Top Performance Killers in Progress Dan Foreman Progress Expert
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 5: Managing File Access.
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
Strength. Strategy. Stability.. Progress Performance Monitoring and Tuning Dan Foreman Progress Expert BravePoint BravePoint
9 Chapter Nine Compiled Web Server Programs. 9 Chapter Objectives Learn about Common Gateway Interface (CGI) Create CGI programs that generate dynamic.
Database-Driven Web Sites, Second Edition1 Chapter 5 WEB SERVERS.
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
By Lecturer / Aisha Dawood 1.  Dedicated and Shared Server Processes  Configuring Oracle Database for Shared Server  Oracle Database Background Processes.
Win202 Database Administration. Introduction Welcome to OpenEdge. Type 2 Storage Areas. One of the big selling points for the OpenEdge platform and Win202.
DEV-09: User Authentication in an OpenEdge™ 10.1 Distributed Computing Environment Michael Jacobs Development Architect.
Introduction to the Adapter Server Rob Mace June, 2008.
Oracle Data Integrator Procedures, Advanced Workflows.
DONE-08 Sizing and Performance Tuning N-Tier Applications Mike Furgal Performance Manager Progress Software
OPS-15: What was Happening with My Database, AppServer ™, OS... Yesterday, Last Month, Last Year? Libor LaubacherRuanne Cluer Principal Tech Support Engineer.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 4 Installing and Configuring the Dynamic Host Configuration Protocol.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
INT-5: Integrate over the Web with OpenEdge® Web Services
What’s new in OpenEdge 10.2B OpenEdge Management OpenEdge Replication
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
A New Object Model for WebSpeed and HTTP
DEV-8: AppServer ™ Mode Case Studies Simon Epps Solutions Engineer.
Copyright © SoftTree Technologies, Inc. DB Log Expert From Oracle Admin Manual: “The best way to determine the appropriate number of online redo.
Distributed File Systems Questions answered in this lecture: Why are distributed file systems useful? What is difficult about distributed file systems?
Systems and User Interface Software. Types of Operating System  Single User  Multi User  Multi-tasking  Batch Processing  Interactive  Real Time.
By the end of this lesson you will be able to explain: 1. Identify the support categories for reported computer problems 2. Use Remote Assistance to connect.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
CS 440 Database Management Systems Stored procedures & OR mapping 1.
Business Objects XIr2 Windows NT Authentication Single Sign-on 18 August 2006.
DB Index Expert Copyright © SoftTree Technologies, Inc.
4 Copyright © 2004, Oracle. All rights reserved. Managing the Oracle Instance.
Troubleshooting Tools
Featured Enhancements to the IDE & Debugger
DEV-25: You've Got a Problem, Here’s How to Find It
Top Performance Enhancers & Destroyers
C6: Introducing Native Invocation with the OpenEdge® Adapter for Sonic™ ESB Chris James Senior Consultant.
Database System Architectures
Creating and Managing Folders
Presentation transcript:

Best Practices for AppServers & WebSpeed Operation Dan Foreman Progress Expert, BravePoint

Introduction – Dan Foreman Progress User since 1984 Author of several publications & utilities Publications Progress Performance Tuning Guide Progress Database Administration Guide Progress Virtual System Tables Progress V10 DBA Jumpstart Utilities ProMonitor – Database monitoring ProCheck – AppServer/WebSpeed monitoring Pro Dump&Load – Dump/load with minimum downtime Balanced Benchmark – Load testing tool

Glossary/Terminology AS = AppServer WS = WebSpeed Agent Progress Explorer – the original graphical tool for managing AS, WS, and other processes OpenEdge Explorer – replacement for Progress Explorer starting in V10.2; shares the same interface as OpenEdge Management

Starting & Stopping – Command Line or GUI Advantages of GUI (i.e. Progress/OpenEdge Explorer) Easy to use Can easily access resources on multiple servers Safer way to edit the ubroker.properties file although using mergeprop is a safe way to manually edit the properties files

Starting & Stopping – Command Line or GUI Disadvantages of GUI Some attributes are not ‘visible’ (no check box or fill in) although they can be referenced by using a parameter (.pf) file In Progress Explorer right-clicking can be dangerous if your finger or mouse slips

Starting & Stopping – Command Line or GUI Advantages of Command Line Scriptable Repeatable Better logging Disadvantages of Command Line Sometimes not as easy to talk someone through on the phone Primitive method (in the eyes of some)

Mode of Operation StateAware StateReset Stateless StateFree

StateAware & StateReset The Advantage of StateAware/StateReset is that the AppServer maintains application context. This is because each user of an application is bound to and locks a single Appserver for the duration an "Application Session". This binding is also the main disadvantage since it means that it is necessary to spawn one AppServer for each active user, which leads to the consumption of more OS resources and potentially more licenses

Stateless & StateFree Stateless and StateFree are shared by multiple Clients and should only be locked by a Client for a very short period of time. Since a single AS/WS can service many Clients (with well written code), this mode of operation is very scalable and the most widely used; The disadvantage is that the Application must be written to maintain user context

Performance Tuning AS & WS are Progress Clients just like GUI and CHUI 4GL/ABL Clients and use the same tuning parameters

Performance Tuning Quick Request (-q) Trim all AppServers when implementing new code Execution Buffer (-mmax <big>) The default of 3072k is usually too small for AS & WS Use a minimum of 8192-16384

Performance Tuning Sorting (-TB 31 -TM 32) The Progress documentation recommends –TB 24 but 24 has slower performance than 31

Performance Tuning Temp Table Buffers (-Bt <big>) Most AS/WS applications make heavy use of Temp Tables Temp Table DB Blocksize (-tmpbsize #) Set explicitly because the default value has changed multiple times

Performance Tuning Message Size (-Mm) Somewhat tricky to implement because it must be used on both the AS/WS and the database(s) that the AS/WS connects to Good performance improvement with NO-LOCK reads Recommend 4096 or 8192

Performance Tuning Message Compression (-mc) Best gains seen over a WAN or a very slow LAN connection

Performance Tuning Shared Procedure Libraries (sometimes called Memory Mapped Procedure Libraries) To ‘unload’ and make updates to the library, it may be necessary to trim all of the AS & WS Main benefits are for large scale AS/WS sites

Performance Tuning For best performance, AS and WS should normally reside on the same server as the Database

Other Parameters -rereadnolock Extremely important for AS and WS Numerous Kbase entries describe this parameter

Do I want to talk to the Name Server? Depending upon the Mode of operation & programming model used, AS & WS calls might need to communicate with the Name Server Performance can be improved by stopping this ‘conversation’ by using the –DirectConnect parameter

Do I want to talk to the Name Server? Disadvantages of -DirectConnect No AS Load Balancing No AS Failover The Connection port is hardcoded

Logging Can be set for all or individual AS/WS Logging level can be dynamically changed in OE 10.2B

Logging Higher logging levels can Degrade performance Cause the logs to grow quickly The increased ‘verbosity’ can make it difficult to find what you are looking for when there are problems Lower logging levels can make it difficult to troubleshoot problems

Logging In general the Server log is the first place to look when troubleshooting

Monitoring Options Graphical Progress Explorer – V10.1 and earlier OpenEdge Explorer – V10.2 and later OpenEdge Management – AS/WS capabilities added in late V10

Monitoring Options Command Line Other asbman wtbman Actional – a Progress product ProCheck – from BravePoint

What to Monitor Memory utilization Java memory utilization Memory utilization of _progres & _proapsv processes Memory leaks caused by code that doesn’t cleanup after itself are magnified on AS & WS

What to Monitor WebSpeed Should never see LOCKED Send an Alert if there are no AVAILABLE Agents Average Request Duration (importance is dependent upon the WS mode of operation) Average Request Wait (importance is dependent upon the WS mode of operation)

What to Monitor AppServer If an AS shows as SENDING, that is usually R-Code execution Send an Alert if there are no AVAILABLE Agents Average Request Duration (importance is dependent upon the AS mode of operation) Average Request Wait (importance is dependent upon the AS mode of operation)

Miscellaneous Tips Use separate AppServer Brokers for ASYNC and SYNC calls In proxyGen there is a choice of adding the procedure as persistent or non-persistent. In order to ensure the best performance out of WebServices, it is a good idea to configure the procedures as non-persistent. Otherwise you may find your StateFree AppServers all locked by just a few users

New Admin Features in V10.1B “Smart Connections” (10.1B) – Improved connection procedure connection (e.g. failure) reporting from the connection procedure Life Span (10.1B) - shutdown/restart AS/WS after a specified period of time serverLifespan=0 serverLifespanPadding=5

New Admin Features in V10.2A List AppServer Connections (10.2A) – show a list of connections to an AS/WS Examples on the next two slides

List AppServer Connections >asbman -i asbroker1 –listclients ConnHdl User Rmt IP Rmt Port State ------- ---- ------ -------- ----- 2 127.0.0.1 1203 CONNECTED 4 127.0.0.1 1217 CONNECTED

List AppServer Connections > asbman -i asbroker1 -clientdetail 2 conn hdl= 2 user name= remote addr= 127.0.0.1 remote port= 1203 connection state= CONNECTED conn ID= 10.0.0.77::asbroker1::3090::<snip> request count= 1 agent PID= 2176 agent port= 2002

New Admin Features in V10.2B ASK - AppServer KeepAlive - (10.2B) appServerKeepaliveCapabilities=denyClientASK,denyServerASK serverASKActivityTimeout=60 serverASKResponseTimeout=60 Dynamic Properties (10.2B) AutoStop on Timeout (10.2B) – Limit the amount of time given to an operation

New Admin Features in V10.2B Actional Monitoring (10.2B) – Use Actional to monitor AS/WS in addition to other resources in an SOA environment

Conclusion Thank you for coming Contact Info for Dan Foreman Telephone +1 541 754 2116 Email danf@prodb.com