[Smartcc-cvs] smartcc/doc Replay.html,NONE,1.1 Architecture.html,1.1.1.1,1.2 Configuration.html,1.1.
Brought to you by:
hengels
|
From: <he...@us...> - 2002-05-29 09:50:45
|
Update of /cvsroot/smartcc/smartcc/doc
In directory usw-pr-cvs1:/tmp/cvs-serv22432/doc
Modified Files:
Architecture.html Configuration.html Home.html styles.css
Added Files:
Replay.html
Log Message:
o enhanced layout of documentation
o documentation for replay tool
--- NEW FILE: Replay.html ---
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<title>Smart Client Container - Replay Tool</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="styles.css" />
</head>
<body>
<h1>Replay Tool</h1>
<p>
Author: <a href="mailto:he...@in...">Holger Engels</a>
</p>
<h2>Overview</h2>
<p>
From the operations point of view, an application divides into a server, a client
and something that connects these two. While a single client normally deals with
a single user, the server serves all active clients in parallel. The load and the
resources of all clients accumulate in some way. A system "scales", if load and
resources rise lineary with the number of parallel clients. Also with the number
of clients, the probability of conflicts and deadlocks rise. The performance of
a system on load cannot be predicted. It has to be measured. The Replay Tool of
the SmartCC allows you to record a representative client session and replay it
with an arbitrary number of simulated clients in parallel.
</p>
<h2>Recording</h2>
<p>
The org.smartcc.replay.RecordingInterceptor has to be configured for all ejb-refs
that shall be included in the recording. The smart-ref definition may look like
the this:
</p>
<table><tr>
<td style="border: black thin solid"><pre>
<smart-ref>
<ejb-ref-name>ejb/RemoteTest</ejb-ref-name>
<transport>org.smartcc.RMITransport</transport>
<lookup>ejb/RemoteTest</lookup>
<properties>
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.provider.url=jnp://localhost:1099
</properties>
<interceptor>
<interceptor-name>org.smartcc.replay.RecordingInterceptor</interceptor-name>
</interceptor>
</smart-ref>
</pre></td>
</tr></table>
<p>
It doesn't matter, what transport and other interceptors are configured. Now a
representative usecase can be recorded. The result are two files:
</p>
<dl>
<dt>Replay.java</dt>
<dd>A java source file (called <i>Script</i>) that contains the essential code
for the simulated client. The code is quite readable and can be
customized.</dd>
<dt>Replay.data</dt>
<dd>A file with the serialized parameters and results that were passed to
/ returned from the invocations.</dd>
</dl>
<p>
Both together contain the complete information of all remote calls, that were
recorded. For replaying, the Script uses the recorded parameters. The Script has
to be compiled, of course.
</p>
<h2>Replaying</h2>
<p>
The shell script <i>replay</i> in the bin directory can be used to start the
simulator. The application client jar must be contained in the classpath. The
script takes the following command line arguments:
</p>
<table><tr>
<td style="border: black thin solid"><pre>
usage: simulator [options] client_jar script_class data_file user_range
arguments:
client_jar url of application client jar with deployment descriptors
script_class full qualified classname
data_file serialized arguments
user_range 1-'lastUser' or 'firstUser'-'lastUser'
options:
-d, --delay [0..t] factor, that is applied to the recorded delays
0.0 for no delays, 1.0 for same tempo as during recording (default)
-a, --auth the auth type, one of HTTP, JBoss (more to follow), defaults to HTTP
-u, --userid the base userid, to which firstUser .. lastUser will be appended, defaults to 'demo'
-p, --password the password for all users
-i, --iterations number of iterations a virtual user runs the script, defaults to 'start'
-r, --ramp load ramp, n'th client is started after n times the delay in ms, default is 0
-o, --output redirect output to a file
</pre></td>
</tr></table>
<p>
Bear in mind, that the RecordingIntercptor should not be configured for
replaying. Example for starting the replay tool:
</p>
<pre>
bin/replay file:`pwd`/test/build/local/TestApplicationClient.jar Replay Replay.data 300
</pre>
</body>
</html>
Index: Architecture.html
===================================================================
RCS file: /cvsroot/smartcc/smartcc/doc/Architecture.html,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** Architecture.html 27 May 2002 16:21:55 -0000 1.1.1.1
--- Architecture.html 29 May 2002 09:31:14 -0000 1.2
***************
*** 9,12 ****
--- 9,16 ----
<h1>Architecture of the Smart Client Container</h1>
+ <p>
+ Author: <a href="mailto:he...@in...">Holger Engels</a>
+ </p>
+
<h2>Overview</h2>
<p>
Index: Configuration.html
===================================================================
RCS file: /cvsroot/smartcc/smartcc/doc/Configuration.html,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** Configuration.html 27 May 2002 16:21:55 -0000 1.1.1.1
--- Configuration.html 29 May 2002 09:31:14 -0000 1.2
***************
*** 9,12 ****
--- 9,16 ----
<h1>Configuration of the Smart Client Container</h1>
+ <p>
+ Author: <a href="mailto:he...@in...">Holger Engels</a>
+ </p>
+
<h2>Overview</h2>
<p>
***************
*** 52,56 ****
<table><tr>
<td style="border: black thin solid"><pre>
-
<application-client>
<ejb-ref>
--- 56,59 ----
***************
*** 61,68 ****
</ejb-ref>
</application-client>
-
</pre></td>
<td style="border: black thin solid"><pre>
-
<smart-client>
<smart-ref>
--- 64,69 ----
***************
*** 76,80 ****
</smart-ref>
</smart-client>
-
</pre></td>
</tr></table>
--- 77,80 ----
***************
*** 87,91 ****
<table><tr>
<td style="border: black thin solid"><pre>
-
<ejb-jar>
<enterprise-beans>
--- 87,90 ----
***************
*** 106,113 ****
</enterprise-beans>
</ejb-jar>
-
</pre></td>
<td style="border: black thin solid"><pre>
-
<smart-ejb-jar>
<enterprise-beans>
--- 105,110 ----
***************
*** 125,129 ****
</enterprise-beans>
</smart-ejb-jar>
-
</pre></td>
</tr></table>
--- 122,125 ----
***************
*** 152,156 ****
<table><tr>
<td style="border: black thin solid"><pre>
-
<application-client>
<ejb-local-ref>
--- 148,151 ----
***************
*** 161,168 ****
</ejb-local-ref>
</application-client>
-
</pre></td>
<td style="border: black thin solid"><pre>
-
<smart-client>
<smart-local-ref>
--- 156,161 ----
***************
*** 171,175 ****
</smart-local-ref>
</smart-client>
-
</pre></td>
</tr></table>
--- 164,167 ----
***************
*** 182,186 ****
<table><tr>
<td style="border: black thin solid"><pre>
-
<ejb-jar>
<enterprise-beans>
--- 174,177 ----
***************
*** 201,208 ****
</enterprise-beans>
</ejb-jar>
-
</pre></td>
<td style="border: black thin solid"><pre>
-
<smart-ejb-jar>
<enterprise-beans>
--- 192,197 ----
***************
*** 216,220 ****
</enterprise-beans>
</smart-ejb-jar>
-
</pre></td>
</tr></table>
--- 205,208 ----
***************
*** 246,251 ****
<pre>
! java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactory
! java.naming.provider.url=iiop://localhost:900
</pre>
--- 234,239 ----
<pre>
! java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactory
! java.naming.provider.url=iiop://localhost:900
</pre>
***************
*** 260,264 ****
<pre>
! org.smartcc.connector.url=http://localhost:8080/HTTPConnector/
</pre>
--- 248,252 ----
<pre>
! org.smartcc.connector.url=http://localhost:8080/HTTPConnector/
</pre>
Index: Home.html
===================================================================
RCS file: /cvsroot/smartcc/smartcc/doc/Home.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Home.html 28 May 2002 08:09:26 -0000 1.1
--- Home.html 29 May 2002 09:31:14 -0000 1.2
***************
*** 27,32 ****
<li><a href="Architecture.html">Architecture</a></li>
<li><a href="Configuration.html">Configuration</a></li>
<li><a href="api/index.html">API Documentation</a></li>
- <li><a href="http://sourceforge.net/projects/smartcc">SourceForge project page</a></li>
</ul>
--- 27,32 ----
<li><a href="Architecture.html">Architecture</a></li>
<li><a href="Configuration.html">Configuration</a></li>
+ <li><a href="Replay.html">Replay Tool</a></li>
<li><a href="api/index.html">API Documentation</a></li>
</ul>
***************
*** 35,41 ****
<h2>Download / Access</h2>
<ul>
<li><a href="http://sourceforge.net/project/showfiles.php?group_id=54434">Releases</a></li>
! <li><a href="http://sourceforge.net/cvs/?group_id=54434">CVS</a></li>
! <li><a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/smartcc">Browse CVS</a></li>
<li><a href="http://sourceforge.net/mail/?group_id=54434">Mailing Lists</a></li>
</ul>
--- 35,42 ----
<h2>Download / Access</h2>
<ul>
+ <li><a href="http://sourceforge.net/projects/smartcc">SourceForge project page</a></li>
<li><a href="http://sourceforge.net/project/showfiles.php?group_id=54434">Releases</a></li>
! <li><a href="http://sourceforge.net/cvs/?group_id=54434">CVS</a> /
! <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/smartcc">Browse CVS</a></li>
<li><a href="http://sourceforge.net/mail/?group_id=54434">Mailing Lists</a></li>
</ul>
Index: styles.css
===================================================================
RCS file: /cvsroot/smartcc/smartcc/doc/styles.css,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** styles.css 28 May 2002 08:09:26 -0000 1.1
--- styles.css 29 May 2002 09:31:14 -0000 1.2
***************
*** 83,161 ****
}
! .wings {
! font-family: sans-serif;
! font-size: 12pt;
! font-weight: bold;
! font-style: normal;
! color: #770000
! }
!
! .is {
font-family: sans-serif;
font-size: 12pt;
font-weight: normal;
font-style: normal;
! color: #000077
! }
!
! .bigwings {
! font-family: sans-serif;
! font-size: 18pt;
! font-weight: bold;
! font-style: normal;
! color: #770000
! }
!
! .bigwingsheader {
! vertical-align: middle;
! font-family: sans-serif;
! font-size: 18pt;
! font-weight: bold;
! font-style: normal;
! color: #ffffff
! }
!
! .bigis {
! font-family: sans-serif;
! font-size: 16pt;
! font-weight: normal;
! font-style: normal;
! color: #000077
! }
!
! .bigisheader {
! font-family: sans-serif;
! font-size: 16pt;
! font-weight: normal;
! font-style: normal;
! color: #ffffff
}
! .menu {
! background: #222299;
! padding: 0;
! margin: 0;
! font-family: sans-serif;
! font-size: 12pt;
font-weight: bold;
- font-style: normal;
- border-width: 0;
- color: #ffffff
}
! A:link.menu {
! color: #ffffff;
! text-decoration: none;
! font-weight: bold
! }
!
! A:visited.menu {
! color: #ffffff;
! text-decoration: none
! }
!
! A:active.menu {
! color: #66ffff;
! text-decoration: none
}
--- 83,100 ----
}
! DL {
font-family: sans-serif;
font-size: 12pt;
font-weight: normal;
font-style: normal;
! color: #000077;
}
! DT {
font-weight: bold;
}
! PRE {
! padding: 10pt;
}
|