eHL 2004r3 Scalability
Whitepaper
Published: 10/11/2005
Table of Contents
Executive Summary ... 3
Introduction ... 4
Test setup and Methodology ... 5
Automated tests
... 5
Database
... 5
Methodology... 5
Test Environment... 6 Test Hardware... 6
Database
... 6
Application
... 6
Network
... 6
Test Configuration... 6
Database... 6 Application ... 6 Results ... 7 Appendix 1: Test Workflows………8 & 9Executive Summary
SMART, Unisys and Microsoft embarked on a project to prove the upward scalability of the eHL solution with Unisys hardware and Microsoft database software.
This testing was able to prove that the entire solution package of eHL 2004r3 Application Software, Unisys ES7000 hardware and Microsoft SQL Server 2000 database software was able to “scale up” to support 1,000 concurrent users. This was achieved whilst still maintaining an average user response time of less than 3 seconds per page.
Introduction
SMART embarked on a project jointly with Unisys and Microsoft to prove the upward scalability of the eHL solution on Unisys ES7000 hardware with Microsoft SQL Server 2000 Enterprise database software running on Microsoft Windows Server 2003 DataCenter Edition.
This type of scalability testing is vital to proving that a solution can “scale up” given sufficient hardware, allowing customers to be sure that the solution is able to make full use of the hardware available to it.
This performance benchmark demonstrates a sample customer environment
demonstrating processing of more than 450,000 transactions in an 8 hour work day. The following test results demonstrate the substantial transaction volumes that can be handled for large customers simultaneously.
Test setup and Methodology
The key to achieving our goals was the need to observe the solution operating whilst servicing a known number of users. In order to do this, we needed to be able to have automated tests that could be run at will on the test system.
To do this, we monitored the working patterns of real users operating a live instance of eHL 2004r3 and used these observations to define a set of 10 user workflows that very closely represent day-to-day usage of the product.
● Automated tests
The user workflows previously described were recorded using a load-testing product called OpenSTA and saved into script form to allow them to be replayed at will.
Manual adaptations were made to the scripts to allow multiple instances of the scripts to be executed concurrently. Therefore, they were working on the same types of data, but not on the same physical records – just as in the real world.
● Database
A database was populated with 5 months worth of representative data for 10,000 user accounts having access to 10 people each.
This ensured that the database contained a representative quantity of data, and gave us the possibility of running up to 10,000 workflows (one per user account) in any one test session.
● Methodology
In order to understand the behaviour of the solution under load, and optimise the configuration of the environment we ran many tests. This made optimum use of resources and gradually increased the number of users as time progressed.
Test Definition
To put perspective on the test itself, it is helpful to understand the following items: ● This test consisted of 1000 simulated users running through the workflows shown in Appendix 1.
● Between each step of the workflows, a delay of ten seconds was left. This simulates a real user's "thinking time" when using the system. i.e. the time a user will spend reading the information before moving on to another task.
Test Environment Test Hardware
Database
• ES7000 64 bit Server with 8 CPUs and 64GB of Memory
Application
• ES7000 32 bit Server with 16 CPUs and 16GB of Memory
Network
• Dedicated 1000Mb test network for load injector machines to communicate with Application Server.
• Application and Database servers linked via dedicated 1000Mb connection Note that a dedicated test network was used to ensure that the test results were repeatable and not affected by other traffic that may have been using the network at the time.
Test Configuration
Database
• Microsoft Windows 2003 DataCenter Edition • Microsoft SQL Server 2000 Enterprise Edition
Application
• Microsoft Windows 2003 DataCenter Edition • Microsoft Internet Information Server 6 • eHuman Logistics 2004 release 3
Four separate “eHL worker processes” were used, and the test workflows were split evenly between them.
Results
● The following results were observed in our final test run:
Number of users simulated 1000 users, 10 second "think time"
Average page time 1.706 seconds
Maximum page time 12.43 seconds
● The 1000 users were split evenly between the 10 workflows, i.e. within the test each workflow was run 100 times.
● Transactions: 10,100
Appendix 1: Test Workflows
Note, between each workflow step a wait of 10 seconds was left. This was done to simulate the user’s “thinking time” (i.e. time to read each page) whilst using the product.
Workflow 1 Workflow 2 Workflow 3
Manage People Go to Roster Screen Book overtime
Go to Attendance Screen Got to Attendance Screen Exceptions Calendar View Insert two clockings Special Day Booking Go to Exceptions Screen
Go to Roster Screen Credits by day Authorise last four exceptions on page Go back a year Go to Attendance Screen Go to Attendance Screen
Go forward a month Enter Adjustment Delete 2 clockings Daily Resource Chart Find people (*) Book holiday Planning Calendar view Person Details New Adjustment Change: Start Date = 1/1/2005 /
Initials=Rob
Save
Go to Exceptions Screen
Go back a month
Go back a month
Exceptions Calendar View
Workflow 4 Workflow 5 Workflow 6
Go to Attendance Screen Presence by people Manage People
Edit 4 clockings Go to Roster Screen Go to Attendance Screen Go back a week Go to Attendance Screen Go back a year
Go forward a week Go to Roster Screen Go to current day Pattern
Assignment->Edit->Cancel View bookings Go to Home Screen Go to Exceptions Screen Go to Attendance Screen Go to Exceptions Screen Go back a month Edit clocking Authorise an exception Go back a month Add overtime (previous day) Go to Attendance Screen Exceptions Calendar View Adjustments Calendar View Delete two clockings
View Bookings
Workflow 7 Workflow 8 Workflow 9
Manage people Go to Attendance Screen Go to Roster Screen Credits Calendar Go back a week Swap shifts
Go to Exceptions Screen Edit eight clockings Cancel failed shift swap Go to Attendance Screen New Adjustment Credits Calendar Go to Roster Screen Go to Roster Screen Go to Exceptions Screen Skill Attachment summary Payroll authorisation Acknowledge an exception Balances Calendar view Go to Attendance Screen
Assign to pattern Go forward a week
Go to Roster Screen Special day booking
Workflow 10
Go to Exceptions Screen Go back a month Go forward a month View by People
Exceptions Calendar View Go to Attendance Screen Go back a week Go forward a week Go to Roster Screen Go back a year Go forward a year Weekly Resource Chart Planning Calendar View View Bookings
Bookings Calendar View Credits Calendar View Credits by Category Balances by Category Adjustments Calendar View
If you receive a hard copy of this document, please write your name on the front cover, for document control purposes.
© 2006 Smart Human Logistics PLC. All rights reserved.
The contents of this document and all associated computer programs are copyright and may not be reproduced or used in any form or by any means – graphical, electronic or mechanical, including photocopying, recording, taping or information storage and retrieval systems – without the written permission of Smart Human Logistics PLC. This document does not constitute an offer or a contract or the basis of a contract and Smart Human Logistics PLC reserves the right to change all or any part of this document without notice. Smart Human Logistics PLC acknowledges the trademarks of other organisations whose products are mentioned in this document.