Share via


Understanding How APE Works

   

The Application Performance Explorer models application design by using three tiers. These are:

  • Clients

  • Servers

  • Databases

These tiers and the associated processes and services are summarized in the following illustration.

Clients

When you click Start on the APE Manager interface, at least one client process is created. Each client then creates services by using one of the following techniques:

  • Direct instantiation.

  • Using the Pool Manager (the pooling option).

  • Using the Job Manager (the queuing and pooling option).

Additionally, a client can directly access the Jet database, simulating a typical client/server application architecture.

Client processes can pass data to the service objects with each call. In the asynchronous model, the data is passed via the job manager and a worker with each service request. In the synchronous model, data is passed only via a worker.

Both the Pool Manager and Job Manager create workers that in turn create services. When the Retain Service References option is checked, the workers keep a reference to service objects as they are used. The worker then only has to instantiate a service object the first time. After that first time, the worker uses its stored reference to the service to accomplish tasks.

After completing its work, the client returns its call to the APE Manager via the Logger. This logging function accepts information from many sources, including:

  • Client events

  • Job Manager events

  • Pool Manager events

  • Worker events

  • MTS events

  • Database events

  • Expediter events

  • Job summary information

Servers

APE supplies a set of worker services that emulate typical CPU and database access tasks. These workers are instantiated either directly by the client or via the Pool Manager (pooling) or Job Manager (queuing and pooling) services. In a manner similar to the clients, the workers return their results to APE Manager via the Logger.

For More Information   For more information on configuring the workers, defining the resource consumption characteristics of the services, and an explanation of how queuing and pooling affect your APE test, see Defining a Server.

Databases

To provide a variety of database access modeling, APE supports both Jet and SQL Server databases. You can model your data access scenarios using several types of data access methods, including:

  • ActiveX Data Objects (ADO)

  • Remote Data Objects (RDO)

  • Data Access Objects (DAO)

  • ODBC API

For modeling typical client/server applications, the data access work flows directly between the client and the Jet database. For modeling modern distributed applications, the data access work flow is between the worker and either the Jet or SQL Server database.

The data access connection and actual database events use real queries and tables to provide accurate data access modeling. You can change the database to create the exact data access events required by your application.

For More Information   For more information on how data access technology affects the design and performance of your application, see . For more information on how to change APE's database tables and queries, see .