Monday, April 15, 2013

Will my RedPrairie system handle the load?

Overview

Stress Testing the production system is an important part of go-live readiness for new installs and upgrades. You want to be able to simulate the stress on the system so that the system can be tuned properly before going live.

Oracular Stress Tester

Oracular has created a solution for RedPrairie that simulates load for the system by creating virtual pickers and receivers. These agents run from a client machine and run the MOCA commands that simulate the user actions. The solution spaces out the system interactions randomly to simulate real-world environment.

Concepts

    Profile

      You can create several profiles for the stress test. When we run the solution, we run a specific profile.

    Tasks and Users

      We have two types of clients - tasks and users. Tasks are used to simulate automated processes that constantly run as a client to create work for the users. These are similar to RedPrairie tasks and jobs. Users correspond to actual users. We create users on the fly based on a template user id.

Metadata

    The meta-data for the runs is stored in policies. The meta-data is very abstract so it does not take a long time to setup:
  • Modify the template picking and receiving commands based on specific business processes
  • Modify the commands that create work for the pickers and receivers
  • Define a template user id
  • Define number of users for each job code, e.g. how many pickers, and receivers, etc.
  • Run it
  • Analyze the results. Basically you are watching for the difference between min/max times. A high variance over a long period implies that stress is not being managed very well

Use Case

  • From Oracular MOCA Client, launch stress Tester (Note that the free version of Oracular MOCA Client is not licensed for this module)
    • First open a tab for the connection, then launch the external application
      .

  • You can maintain the meta-data from here or by going to the respective policies
    • General Setup 

      Maintain users 

      Maintain tasks

  • Go to the "Run" tab and press Run
    • This launches the stress tester. Each dot in the middle section represents a type of users. When it is doing something, it turns green. The grids are showing what it is doing at a given time.

  • Press "Run" again to stop the test.
  • Go to the "Report" Tab to see the results.
    • The results are also kept in a few database tables.

Conclusion

As you can see from the results, the information can be very useful.  A large difference between min and max may imply that the system faces contention as the number of users grow.  This may offer opportunity to tune the system before it is placed in production.

If you need more information about this solution, contact me at saad.ahmad@oracular.com