DayTrader

DayTrader is an Open Source benchmark application emulating an online stock trading system.

Users can log in and view their accounts or portfolios. In the Quotes/Trade section they can buy or sell stock shares out of their portfolio.

The users are emulated by a workload driver and generate load to the benchmark application. You can display the related benchmark website by accessing the DayTrader homepage. Navigate to the Configuration Tab > Test DayTrader Scenario .
Note: The DayTrader application must be initialized to view this page. Hence the DayTrader database must already exist and is populated with sample data. After it has been populated with sample data the DayTrader database has a size of approximately 100 MB.
Figure 1. DayTrader test scenario
Screen shot of DayTrader home page

DayTrader is currently hosted at the Apache Geronimo project. It was originally developed by IBM® as the WebSphere® Trade performance benchmark and was donated to the Apache Geronimo project in 2005.

DayTrader is an end-to-end Java™ Enterprise Edition (J2EE) web application composed of several Java classes, Java Servlets, Java Server Pages, Web Services and Enterprise Java Beans (EJB). Thus makes it an ideal benchmark application for measuring the scalability and performance of a J2EE application server like IBM WebSphere Application Server (WAS). The presentation layer is based on Java Servlets and Java Server Pages, whereas the backend business logic uses Java database connectivity (JDBC), Java Message Service (JMS), EJB and Message Bean techniques.

For further details, see the DayTrader documentation at:

https://geronimo.apache.org/GMOxDOC22/daytrader-a-more-complex-application.html

The TradeDatabase is hosted on the DB2® database server and is accessed via JDBC from the application server. In order to do a benchmark application run, the following steps are required:

  1. Create TradeDatabase tables and indexes.
  2. Reset DayTrader runtime to a clean starting point before each run.
  3. (Re)Populate TradeDatabase with user and stock sample data.