SLAMD

The SLAMD Distributed Load Generation Engine (SLAMD) is a Java-based application designed for stress testing and performance analysis of network-based applications. Initial development of SLAMD was performed at Sun Microsystems, with recent development sponsored primarily by UnboundID Corp..
SLAMD is available under the terms of the Sun Public License, which is an OSI-approved open source license. The main site for obtaining information about SLAMD is available at its main web site. It is no longer under active development and was, but is no longer, available as a java.net project
SLAMD was originally developed for the purpose of benchmarking and analyzing the performance of LDAP directory servers, and it is the most powerful and flexible tool available for this task. However, it is also well-suited for testing other kinds of network applications and has been used for things like Web servers and Web-based applications, relational databases, and mail servers. It can also be used for non-network based applications (and in fact, it is used for comparing things like CPU power and memory latency across a number of different kinds of systems), although its distributed nature makes it ideal for systems that can be accessed remotely.
Architecture
SLAMD uses a distributed model consisting of a server (SLAMD is distributed with Apache Tomcat) and clients. The operator schedules a new job using a browser, and submits the job for execution. The server sends the scheduled job to selected clients, these clients then generate load based on parameters defined in the SLAMD job class and report results back to the SLAMD Server. SLAMD 2.0.0-alpha1 uses the Berkeley DB Java Edition.
Extensibility
:"SLAMD provides a Java-based API to make it possible to quickly develop custom workloads, and it also contains an embedded scripting engine that can make it easy to stress applications using protocols like LDAP, HTTP, SMTP, IMAP, and POP, or any database that can be accessed via JDBC. It also includes tools for recording and playing back TCP traffic, and a utility for intercepting LDAP communication and writing it as a script that may be executed in the SLAMD scripting engine."
SLAMD jobs are managed by Java classes. New SLAMD job classes can be created by writing Java code using a well-defined API, compiling the Java code, and installing the Job Class (the class is installed on the servers and the server pushes it out to the clients).
Installation
Supported Systems
SLAMD is supported on any computer operating system that supports Java, such as Solaris, Linux, AIX, HPUX, and Windows. SLAMD version 2 or greater requires Java 5 or greater.
Jobs
Benchmarking campaigns are a series of SLAMD jobs. SLAMD jobs are created by filling in the forms in the Schedule a New Job page. The operator sets up a job via a browser, then submits the job. The Server sends the job to SLAMD Clients.
The SLAMD Clients generate load based on parameters in the SLAMD job class. Parameters can be items such as duration, ramp-up and ramp-down, and any other parameter defined in the Job Class.
Reporting
SLAMD generates reports in the following formats:
* HTML
* Portable Document Format
* Text file
 
< Prev   Next >