|
|
SLAMD Distributed
Load Generation Engine
|
Version 2.0.1
|
SLAMD 2.0.0-20090227 Release Notes
The following changes have been integrated into SLAMD since the SLAMD 2.0.0-alpha1
release:
-
The source code has been completely refactored to use a package structure of
"com.slamd.*". Further, the "com.slamd.example" package has been changed to
"com.slamd.jobs". All of the tools have been moved into the com.slamd.tools
package structure, and all classes are now delivered in a single jar file
rather than a combination of multiple jars and individual classes. The
administrative interface has been broken up so that rather than keeping all
source in one huge file, it is now split across several files. The job API
has been updated so that it is now possible to provide short and long
descriptions, and the destroy method has been renamed to destroyThread so
that it no longer overrides the Thread.destroy method.
-
The source code has been significantly updated to require the use of Java 5.0
or later. The code builds cleanly on Java 5.0 with no warnings, and takes
advantage of features introduced in Java 5 including generics, better
concurrency support, and more accurate timing.
-
The UnboundID LDAP SDK for Java is now used as the primary library for
communicating with LDAP Directory Servers. The Netscape Directory SDK is
still used in a few legacy cases, but for the most part jobs which perform
LDAP communication now use the UnboundID LDAP SDK. These jobs have been
completely rewritten to provide better performance, and additional features
like support for client-side load balancing across multiple directory
servers, support for StartTLS communication, and a response time threshold.
Specific jobs have additional enhancements as well.
-
Many of the LDAP-based job classes have been consolidated so that there are
fewer jobs in total, but the jobs that are there provide the same basic
features that were included in the previous set of jobs (as well as
additional functionality that was not previously available).
-
A new job class has been added that makes it possible to perform searches
against an LDAP directory server when a large number of connections are
established (and the number of connections is not based on the number of
client threads). Requests will be spread across those connections.
-
A new job class has been added that makes it possible to wait for an LDAP
directory server to become available before continuing on with subsequent
tests.
-
Some legacy job classes have been removed which are likely no longer useful
and which I am not in a position to continue supporting.
-
A new resource monitor has been added which provides the ability to obtain
resource monitoring information from an LDAP directory server (and
particularly from monitor entries offered by the server). It uses a
configuration file to provide very flexible control over the types of
information that may be captured.
-
The TimeTracker stat tracker has been updated so that it provides much
greater accuracy using nanosecond-resolution timers. The results reported
will remain the same, but they should be much more accurate, especially for
operations which take less than a few milliseconds.
-
The Tomcat and Berkeley DB JE libraries have been updated to use the latest
available versions.
-
The SLAMD scheduler has been updated so that it uses a blocking queue rather
than periodic polling for scheduling new jobs. In most cases, if a job is
eligible to start running immediately, then it will do so. Often, the page
displayed in the administrative interface after the job has been scheduled
will show that the job is already running.
-
A number of shell scripts and batch files have been provided to make it
easier to invoke tools provided with SLAMD. A new Tools Guide document has
been added which summarizes the available tools and provides usage
information. These tools are now included in the client and resource monitor
client archives as well as with the SLAMD server.
-
The searchrate, modrate, and authrate command-line tools provided as examples
in the UnboundID LDAP SDK for Java have been exposed for use with SLAMD.
-
The client and resource monitor client packages have been updated so that it
is possible to explicitly control the client ID and source IP address that
are used when communicating with the SLAMD server. This is particularly
helpful when used on multi-homed systems, especially when the system has
multiple interfaces on the same network.
-
Updates have been made to the administrative interface when viewing jobs to
make them less likely to require horizontal scrolling.
-
Job descriptions have been improved. On the page listing the jobs available
to be scheduled, the links to the jobs now have pop-up hints that provide a
short description of the job. On the page allowing you to schedule a job, a
longer description of the job is available at the top of the page.
-
A number of miscellaneous bug fixes and enhancements have been applied.
|