You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wadi-commits@incubator.apache.org by bd...@apache.org on 2005/12/14 23:36:16 UTC

svn commit: r356933 [35/35] - in /incubator/wadi/trunk: ./ etc/ modules/ modules/assembly/ modules/assembly/src/ modules/assembly/src/bin/ modules/assembly/src/conf/ modules/assembly/src/main/ modules/assembly/src/main/assembly/ modules/core/ modules/c...

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/jmxmonitoring.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/jmxmonitoring.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/jmxmonitoring.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/jmxmonitoring.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<document>
+    <properties>
+        <title>Setting up JMX Monitoring - MC4J</title>
+    </properties>
+    <body>
+        <section name="Setting up JMX Monitoring - MC4J">            
+            <p>
+                 <ol>
+                     <li>cd $WADI_HOME/bin</li>
+                     <li>./node.sh $container <font color="red">red</font></li>
+                     <li>download, install and start <a href="http://mc4j.org/confluence/display/MC4J/Home?">mc4j-1.2beta9+</a></li>
+                     <li>Management->Create Server Connection...</li>
+                     <li>select a 'Server Connection Type' of 'JSR160'</li>
+                     <li>choose a name e.g. "WADI (<font color="red">red</font>)"</li>
+                     <li>replace the default 'Server URL' with a url for <font color="red">red</font> - service:jmx:rmi://localhost/jndi/rmi://localhost:1099/wadi (output as node starts)</li>
+                     <li>Next</li>
+                     <li>Finish</li>
+                 </ol>
+                
+                You should see a popup appear telling you that a number of MBeans are being loaded, and an e.g. "WADI (<font color="red">red</font>)" node appearing in the MC4J Connections panel.
+                
+                <ol>
+                    <li>WADI (<font color="red">red</font>) -> MBeans -> WADI(n) -> name=MemoryContextualiser -> Attributes -> LocalSessionCount</li>
+                    <li>right click over LocalSessionCount attribute and select "Graph..."</li>
+                    <li>restart your browser (or throw out cookie from last test) and point it at <font color="red">red</font> - <a href="http://localhost:8080/wadi/create.jsp">http://localhost:8080/wadi/create.jsp</a></li>
+                </ol>                
+                
+                You should see the graph increase by one on the y-axis.
+                
+                Congratulations - you are now graphing the number of active sessions on your <font color="red">red</font> node.
+            </p>
+        </section>
+    </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/loadbalancing.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/loadbalancing.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/loadbalancing.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/loadbalancing.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,68 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Setting up a Load Balancer - mod_jk2</title>
+  </properties>
+  <body>
+    <section name="Setting up a Load Balancer - mod_jk2">
+      <p>
+	<ol>
+	  <li>Download, install and start Apache httpd (beyond the scope of this page! - try Google)</li>
+	  <li>If it does not include mod_jk2, do the same for that (beyond the scope of this page! - try Google)</li>
+	  <li>At the bottom of your e.g. /etc/httpd/conf/http.conf (file location may vary), place e.g. the following:
+
+	    <code><pre>
+    &lt;VirtualHost *:80&gt;
+        &lt;Location "/wadi"&gt;
+            JkUriSet group cluster
+        &lt;/Location&gt;
+    &lt;/VirtualHost&gt;
+
+    # Load the Tomcat/Apache connector module, if it isn't already
+    &lt;IfModule !mod_jk2.c&gt;
+        LoadModule jk2_module modules/mod_jk2.so
+    &lt;/IfModule&gt;
+	      </pre></code>
+	  </li>
+	  <li>Copy $WADI_HOME/conf/workers2.properties to e.g. /etc/httpd/conf/ (location may vary)</li>
+	  <li>Apachectl restart</li>
+	  <li>Point your browser at e.g. : <a href="http://localhost:80/jkstatus">http://localhost:80/jkstatus</a></li>
+	</ol>
+
+	You should see the mod_jk2 status page, listing all the potential nodes in your cluster along with their AJP ports.
+	Congratulations - you now have a two-tier deployment - Apache/mod_jk2 over a Jetty/Tomcat cluster with a distributable webapp.
+
+	<ol>
+	  <li>Restart your browser or throw out any cookies returned from your cluster</li>
+	  <li>Hit <a href="http://localhost/wadi/create.jsp">http://localhost:80/wadi/create.jsp</a> - the page colour informs you as to which node the session was created upon</li>
+	  <li>Hit <a href="http://localhost/wadi/index.jsp?limit=25&amp;refresh=3">http://localhost/wadi/index.jsp?limit=25&amp;refresh=3</a></li>
+	</ol>
+
+	<p>
+	You will see a page of nine frames
+	</p>
+	<p>
+	  <img src="../images/loadbalancing.0.jpg"/>
+	</p>
+	Each frame contains a rendering of your current session
+	The background colour of the frame informs you of the node rendering the frame
+	The cells within the frame represent the session itself
+	Each time you access the session you add a new cell (up to a maximum)
+	The cell's colour records the node on which the cell was added to the session
+
+	You should see the session moving from node to node as requests, landing [pseudo-]randomly within the cluster are rendered in the correct context.
+
+	Congratulations - you now have a working cluster - but no session affinity - an important optimisation which will prevent a lot of session relocation (migration) and request relocation (proxying/redirecting), by trying to consistantly deliver requests for the same session to the same node.
+
+	<ol>
+	  <li>Look in WEB-INF/wadi-web.xml to see how to enable the WADI/mod_jk[2] integration</li>
+	  <li>Restart your cluster and browser - try again</li>
+	</ol>
+
+	You should now see your session remaining in one place (unless you then take down that node, in which case WADI should find it on another node and restick your client to its new location).
+
+	Congratulations - you are now a web clustering expert.
+      </p>
+    </section>
+  </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/location.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/location.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/location.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/location.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,174 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Getting Started: Location</title>
+  </properties>
+  <body>
+    <section name="Location">
+      "Location, Location, Location!"
+      <p>
+	The Location of resources is all-important in a Cluster. The
+	sum of all e.g. Sessions, may be too large for copies of all
+	of them to be held on every node (not to mention the issues
+	associated with trying to keep all these copies up to date).
+      </p>
+      <p>
+	A WADI Partition is responsible for maintaining a Map of
+	session-id:session-location for a distinct subset of the
+	cluster's sessions.
+      </p>
+      <p>
+	Each node can deduce the Partition to which a session belongs by
+	applying a simple algorithm to its ID.
+      </p>
+      <p>
+	Each node knows which node is responsible for each of the fixed
+	number of Partitions. (This information is disseminated around
+	the cluster every time ownership of a Partition changes).
+      </p>
+      <p>
+	Thus, it follows that any node can find the whereabouts of any
+	session, by using its ID to decide who knows where it is and
+	then asking them.
+      </p>
+      <p>
+	The flipside of this is that each time a session is created,
+	migrated, or destroyed, its corresponding Partition must be
+	notified of this change. (In future, WADI will try to ensure
+	that sessions are generally created and destroyed on the node
+	that holds their Partition, so minimising network traffic -
+	but in exceptional cases a session may have to be moved
+	elsewhere)..
+      </p>
+      We can watch this occurring in WADI.
+      <p>
+	Start your <font color="red">red</font> and <font color="green">green</font> nodes.
+      </p>
+      <p>
+	Create a Session on the <font color="red">red</font> node,
+	using e.g. the following link: <a href="http://localhost:8080/wadi/session.jsp">http://localhost:8080/wadi/session.jsp</a>.
+      </p>
+      <p>
+	Note that <font color="red">red</font> will say something like:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 17:54:29:292 GMT [DEBUG] ClusteredManager - -creation: A931056AACF210B8058025F67E1204CB
+	</code>
+      </p>
+      <p>
+	and whichever node is the Partition Master for the newly
+	created session will report its notification e.g. thus (in
+	this case Partition #3, currently serviced by <font
+	color="green">green</font>, is reporting that it has just been
+	notified of the [re]location of a session on <font
+	color="red">red</font>):
+      </p>
+      <p>
+	<code>
+	  2005/12/07 17:54:29:271 GMT [DEBUG] LocalPartition#3@green - -insert: A931056AACF210B8058025F67E1204CB {red}
+	</code>
+      </p>
+      <p>
+	<code>
+	</code>
+      </p>
+      <p>
+	Your browser should be returning a page looking something like this:
+      </p>
+      <p>
+	<img src="../images/location.0.jpg"/>
+      </p>
+      <p>
+	The background of the page is <font color="red">red</font>
+	because it was served from the <font color="red">red</font>
+	node. There is a table containing one cell, because we have
+	only touched the page once. This cell is <font
+	color="red">red</font>, because it was allocated on the <font
+	color="red">red</font> node.
+      </p>
+      <p>
+	Refresh the page a couple of times. Notice that, since
+	everything is now local, we do not see any more
+	location-oriented messages. You should end up with something
+	like this :
+      </p>
+      <p>
+	<img src="../images/location.1.jpg"/>
+      </p>
+      <p>
+	Since we have touched the page three times now on the <font
+	color="red">red</font> node, we have three <font
+	color="red">red</font> cells.
+      </p>
+      <p>
+	Now we can try asking for the same session on the <font
+	color="green">green</font> node. Try hitting e.g. <a
+	href="http://localhost:8081/wadi/session.jsp">http://localhost:8081/wadi/session.jsp</a>.
+      </p>
+      <p>
+	<font color="red">red</font> should say something like this:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 17:59:52:207 GMT [DEBUG] Utils - -motion: A9518C9C6BAB34CDBEE765DF60AE6A76 : memory -> emigration:green (74 millis)
+	</code>
+      </p>
+      <p>
+	<font color="green">green</font> should say something like this:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 17:59:52:195 GMT [DEBUG] Utils - -motion: A9518C9C6BAB34CDBEE765DF60AE6A76 : immigration:red -> memory (40 millis)
+	</code>
+      </p>
+      <p>
+	and the Partition Master should report the change of session location:
+      </p>
+      <p>
+	<code>
+	  LocalPartition#46@red - -move: A9518C9C6BAB34CDBEE765DF60AE6A76 {red->green}
+	</code>
+      </p>
+      <p>
+	Finally your browser should now have a page like this:
+      </p>
+      <p>
+	<img src="../images/location.2.jpg"/>
+      </p>
+      <p>
+	The table may be thought of as a history of the session's
+	location in the cluster. You should be able to see from the
+	colour of the page and the new cell, that the session has now
+	moved to the <font color="green">green</font> node.
+      </p>
+      <p>
+	NOTE - some browsers partition cookies by host and some by
+	host:port - Konqueror seems to do the latter - breaking this
+	demo... - what about Internet Explorer ?
+      </p>
+      <p>
+	Just to be sure, refresh the page a couple of times.
+      </p>
+      <p>
+	<img src="../images/location.3.jpg"/>
+      </p>
+      <p>
+	You get the idea...
+      </p>
+      <p>
+	NOTE - we should demonstrate the destruction of the session
+	and its removal from the Partition as well...
+      </p>
+      <p>
+	The transparent relocation of sessions beneath incoming
+	requests is an important part of WADI's ability to ensure that
+	request and session meet somewhere in the cluster in order to
+	correctly render the response.
+      </p>
+    </section>
+      <p>
+      Try starting a number of different WADI nodes, then creating and moving a session around them...
+      </p>
+  </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/paging.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/paging.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/paging.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/paging.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,126 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Getting Started: Paging</title>
+  </properties>
+  <body>
+    <section name="Paging">
+      ""
+      <p>
+	As the number and size of the sessions on a node increases,
+	the ability of the JVM to manage its heap decreases, leading
+	to reduced performance. The physical footprint of the JVM on
+	the box also increases, necessitating the purchase of more
+	memory and larger, faster, more expensive boxes.
+      </p>
+      <p>
+	By paging out inactive sessions to a cheaper, slower storage
+	medium, space in the more expensive, faster medium (memory)
+	can be preserved. If the session is required after this event,
+	it will be paged back in. If it is not, it may simply expire
+	on disc. (Note that some types of Listener require
+	notification on Session death and may cause the session to be
+	reloaded as it is destroyed).
+      </p>
+      <p>
+	If a session that is paged out is required by another node, it
+	may be located, read in from local disc by one node, then,
+	without being deserialised (one of the most expensive things
+	that distributed apps commonly do), be moved to the node on
+	which its request has arrived. Here it can be deserialised and
+	used to service the request, remaining on this node, until
+	being required elsewhere, paged out again, invalidated by its
+	application or timed out by the container.
+      </p>
+      <p>
+	The WADI demo webapp comes with a MemoryEvicter, which is set
+	to sweep memory every 10 seconds and evict sessions which have
+	not been used for more than 10 seconds. We would not recommend
+	these settings for production, but they are useful for
+	demonstration purposes.
+      </p>
+      Let's try it.
+      <p>
+	We start a <font color="red">red</font> and <font color="green">green</font> node.
+      </p>
+      <p>
+	When everything has settled down, create a session on <font
+	color="red">red</font> with e.g. :<a
+	href="http://localhost:8080/wadi/session.jsp">http://localhost:8080/wadi/session.jsp</a>
+	and wait for between 10 and 20 seconds, until you see <font
+	color="red">red</font> say something like :
+      </p>
+      <p>
+	<code>
+	  2005/12/07 21:56:06:325 GMT [DEBUG] Utils - -motion: 7F9BF12C222FCC99607CAFF98D0EAEF3 : memory -> exclusive disc (12 millis)
+	</code>
+      </p>
+      <p>
+	<font color="red">red</font> is telling you that it has moved
+	a session out of memory and onto exclusively owned disc -
+	i.e. disc that only <font color="red">red</font> has access
+	to.
+      </p>
+      <p>
+	Reload your page - adding another cell to the table. <font color="red">red</font> says:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 22:04:17:455 GMT [DEBUG] Utils - -motion: 7F9BF12C222FCC99607CAFF98D0EAEF3 : exclusive disc -> memory (3 millis)
+	</code>
+      </p>
+      <p>
+	and the session moves up the stack and back into memory.
+      </p>
+      <p>
+	Let it page out again, then ask for it on <font color="green">green</font> - e.g. : <a href="http://localhost:8081/wadi/session.jsp">http://localhost:8081/wadi/session.jsp</a>
+      </p>
+      <p>
+	<font color="red">red</font> says:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 22:56:05:260 GMT [DEBUG] Utils - -motion: C8C00E6E6A7F47C6264F12F39EB7A312 : exclusive disc -> emigration:green (66 millis)
+	</code>
+      </p>
+      <p>
+	You can see that the session was never deserialised by <font color="red">red</font> - it travelled straight from disc...
+      </p>
+      <p>
+	<code>
+	  2005/12/07 22:56:05:251 GMT [DEBUG] Utils - -motion: C8C00E6E6A7F47C6264F12F39EB7A312 : immigration:red -> memory (39 millis)
+	</code>
+      </p>
+      <p>
+	...into memory on <font color="green">green</font>, where it was deserialised.
+      </p>
+      <p>
+	Let it sit on <font color="green">green</font> until it pages out again...then gently (ctl-c) shutdown <font color="green">green</font>:
+      </p>
+      <p>
+	The session is evacuated directly from disc on <font color="green">green</font>...
+      </p>
+      <p>
+	<code>
+	  2005/12/07 23:00:45:442 GMT [DEBUG] Utils - -motion: C8C00E6E6A7F47C6264F12F39EB7A312 : exclusive disc -> cluster (24 millis)
+	</code>
+      </p>
+      <p>
+	... to disc on <font color="red">red</font>.
+      </p>
+      <p>
+	<code>
+	  2005/12/07 23:00:45:434 GMT [DEBUG] Utils - -motion: C8C00E6E6A7F47C6264F12F39EB7A312 : cluster -> exclusive disc (5 millis)
+	</code>
+      </p>
+      <p>
+	Note: No deserialisation occurred at all.
+      </p>
+    </section>
+      <p>
+      By allowing the paging out of inactive sessions WADI can greatly
+      decrease hardware requirements within a cluster and improve
+      performance of existing deployments.
+      </p>
+  </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/partitioning.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/partitioning.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/partitioning.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/partitioning.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,96 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Getting Started: Partitioning</title>
+  </properties>
+  <body>
+    <section name="Partitioning">
+      "Divide And Conquer"
+      <p>
+	Partitioning is a strategy commonly used to aid in
+	scalability. You divide a large problem into smaller pieces
+	that are independant of each other. Because they are
+	demonstrably independant of each other, these problems may be
+	e.g. solved concurrently with no contention on any shared
+	resource and therefore no requirement to be running in the
+	same JVM.
+      </p>
+      <p>
+	Many existing clustering solutions require that a cluster is
+	manually partitioned at configuration time and that this
+	structure remains static throughout the lifetime of the
+	system.
+      </p>
+      <p>
+	Fortunately for this demo, WADI partitions its problem space
+	dynamically. A fixed number of Partitions is specified at
+	configuration time. Ownership of these is then renegotiated
+	dynamically between a cluster's nodes as they join and leave
+	the cluster.
+      </p>
+      We can watch this happening in a very simple WADI demo.
+      <p>
+	We start a <font color="red">red</font> node. As it comes on line WADI outputs e.g. the following:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 16:30:54:444 GMT [DEBUG] SimplePartitionManager#red - -allocating 72 partitions
+	</code>
+      </p>
+      <p>
+	Then we start a <font color="green">green</font> node. As it comes up the <font color="red">red</font> node says:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 16:36:36:720 GMT [DEBUG] DIndex#red - -node joined: green
+	</code>
+	<br/>
+	<code>
+	  2005/12/07 16:36:36:988 GMT [DEBUG] SimplePartitionManager#red - -released 36 partition[s] to green
+	</code>
+      </p>
+      <p>
+      and the <font color="green">green</font> node says:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 16:36:36:979 GMT [DEBUG] SimplePartitionManager#green - -acquired 36 partition[s] from red
+	</code>
+	<br/>
+	<code>
+	  2005/12/07 16:36:36:996 GMT [DEBUG] DIndex#green - -node joined: red
+	</code>
+      </p>
+      <p>
+	so you can see that <font color="red">red</font> has shared its partitions with the new member, <font color="green">green</font>.
+      </p>
+      <p>
+	If you shutdown <font color="green">green</font> (gently via e.g. ctl-c), you will see it say:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 16:40:01:750 GMT [DEBUG] SimplePartitionManager#green - -released 36 partition[s] to red
+	</code>
+      </p>
+      <p>
+	and <font color="red">red</font> says:
+      </p>
+      <p>
+	<code>
+	  2005/12/07 16:40:01:696 GMT [DEBUG] DIndex#red - -node left: green
+	</code>
+	<br/>
+	<code>
+	  2005/12/07 16:40:01:707 GMT [DEBUG] SimplePartitionManager#red - -acquired 36 partition[s] from green
+	</code>
+      </p>
+      <p>
+	This ability to share responsibility for servicing a fixed set
+	of Partitions is at the very centre of WADI's architecture.
+      </p>
+    </section>
+      <p>
+      Try starting a number of different WADI nodes and watching the sharing of Partitions across the cluster...
+      </p>
+  </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/start.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/start.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/start.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/start.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,25 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Getting Started with WADI</title>
+  </properties>
+  <body>
+    <section name="Getting Started: Start">
+      <p>
+	You can put together a heterogeneous cluster of <a href="./tomcat.html">Tomcat</a>, <a href="./jetty.html">Jetty</a>, <a href="./geronimo.html">Geronimo</a> and <a href="./jboss.html">JBoss</a> instances.
+      </p>
+      <p>
+	If you are using a clustered configuration
+	<ol>
+	  <li>cd $ACTIVEMQ_HOME/bin</li>
+	  <li>Start the activemq broker - e.g. 'sh ./activemq'</li>
+	  <li>
+	    Then run up one <font color="red">red</font> and one <font color="green">green</font> instance of either <a href="./tomcat.html">Tomcat</a>, <a href="./jetty.html">Jetty</a> and <a href="./jboss.html">JBoss</a>.
+	    Congratulations, you have started your first (2 node) WADI cluster
+	  </li>
+	  <li>Look in $WADI_HOME/conf for the set of node.&lt;colour&gt;.properties files that define the red, green and many other nodes...</li>
+	</ol>
+      </p>
+    </section>
+  </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/tomcat.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/tomcat.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/tomcat.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/getting-started/tomcat.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<document>
+    <properties>
+        <title>Getting Started - Tomcat</title>
+    </properties>
+    <body>
+        <section name="Getting Started - Tomcat">
+            <p>
+                Either:
+                <ol>
+                    <li>download a copy of <a href="http://tomcat.apache.org/download-55.cgi">Tomcat 5.0.28+</a> - unpack it somewhere</li>
+                    <li>set TOMCAT50_HOME to this directory and export it</li>
+                </ol>
+                Or:
+                <ol>
+                    <li>download a copy of <a href="http://tomcat.apache.org/download-55.cgi">Tomcat 5.5.9+</a> - unpack it somewhere</li>
+                    <li>set TOMCAT55_HOME to this directory and export it</li>
+                </ol>
+                If you would like to make use of the Spring JMX integration for WADI so that you can browse WADI's MBeans via e.g. mc4j (recommended), you will need to do the following :
+                <ol>
+                    <li>download a copy of <a href="http://sourceforge.net/project/showfiles.php?group_id=47745">mx4j-3.0.1</a> - unpack it somewhere</li>
+                    <li>set MX4J_HOME to this directory and export it</li>
+                    <li>If using Tomcat-50, remove $TOMCAT50_HOME/bin/jmx.jar</li>
+                    <li>copy $MX4J_HOME/lib/{mx4j.jar,mx4j-remote.jar,mx4j-tools.jar} into $TOMCAT50_HOME/server/lib or $TOMCAT55_HOME/server/lib</li>
+                </ol>
+
+                Finally, to start the node :
+
+                from $WADI_HOME/bin run e.g. './node.sh tomcat50 <font color="red">red</font>' or './node.sh tomcat55 <font color="red">red</font>'
+            </p>
+        </section>
+    </body>
+</document>

Added: incubator/wadi/trunk/wadi-site/src/site/xdoc/index.xml
URL: http://svn.apache.org/viewcvs/incubator/wadi/trunk/wadi-site/src/site/xdoc/index.xml?rev=356933&view=auto
==============================================================================
--- incubator/wadi/trunk/wadi-site/src/site/xdoc/index.xml (added)
+++ incubator/wadi/trunk/wadi-site/src/site/xdoc/index.xml Wed Dec 14 15:32:56 2005
@@ -0,0 +1,116 @@
+<?xml version="1.0"?>
+<document>
+  <properties>
+    <title>Welcome to WADI</title>
+  </properties>
+  <body>
+    <section name="WADI - Web Application Distribution Infrastructure">
+      <div id="downloadbox">
+	<h5>Get WADI</h5>
+	<p>
+	  <img valign="top" src="./images/folder-open.gif" border="0" alt="" title="download"/>
+	  Download
+	  WADI 2.0-SNAPSHOT
+	  <a href="http://dist.codehaus.org/wadi/distributions/wadi-2.0-SNAPSHOT-bin.tar.bz2">.tar.bz2</a>,
+	  <a href="http://dist.codehaus.org/wadi/distributions/wadi-2.0-SNAPSHOT-bin.tar.gz">.tar.gz</a>,
+	  <a href="http://dist.codehaus.org/wadi/distributions/wadi-2.0-SNAPSHOT-bin.zip">.zip</a>
+	  <small>(9.0Mb)</small>
+	</p>
+	<ul>
+	  <li>
+	    <a href="./documentation/index.html#installation">Installation Instructions</a>
+	  </li>
+	  <li>
+	    <a href="./getting-started/index.html">Getting Started</a>
+	  </li>
+	  <li>
+	    <a href="./documentation/index.html">Documentation</a>
+	  </li>
+	</ul>
+	<p>
+	  <img valign="top" src="./images/folder-open.gif" border="0" alt="" title="download"/>
+	  Download
+	  WADI 0.9
+	  <a href="http://dist.codehaus.org/wadi/distributions/wadi-0.9.tgz">.tgz</a>,
+	  <a href="http://dist.codehaus.org/wadi/distributions/wadi-0.9.zip">.zip</a>
+	  <small>(6.2Mb)</small>
+	</p>
+	<ul>
+	  <li>
+	    <a href="./documentation/index.html">Documentation</a>
+	  </li>
+	</ul>
+
+      </div>
+      <div style="clear: right; float: right">
+	<a href="http://www.apachecon.com/2005/US/index.html"><img src="http://www.apache.org/images/ac2005us_white_184x80.jpg" width="184" height="80" border="0" title="ApacheCon US 2005" /></a>
+      </div>
+
+      <p/>
+
+      WADI is an acronym of 'Web Application Distribution Infrastructure'.
+
+      <p>
+
+	WADI started life as a solution to the problems surrounding
+	the distribution of state in clustered web tiers, but is
+	becoming a more generalised distributed caching service.
+
+      </p>
+      <p>
+
+	WADI's aim is to resolve many of the problems of dealing
+	with state in a cluster. This involves technologies such as
+	:
+
+	<p>
+	  WADI Core:
+	  <ul>
+	    <li>Vertically - a cache with pluggable/stackable paging and persistance mechanisms (File, Database, etc.)</li>
+	    <li>Horizontally - A scalable, highly available, self-partitioning, self-healing clustering substrate - a distributed index/map</li>
+	    <li>Pessimistic locking semantics</li>
+	    <li>Transparent State->Invocation and Invocation->State migration</li>
+	    <li>Under construction - Various replication strategies (including efficient in-vm replication) for HA state</li>
+	  </ul>
+	</p>
+
+	<p>
+	  WADI Web:
+	  <ul>
+	    <li>A resolution to application vs container space concurrency issues surrounding HttpSessions</li>
+	    <li>Pluggable HttpSession serialisation strategies - per-session, per-attribute</li>
+	    <li>HttpRequest relocation (by redirection and proxying)</li>
+	    <li>Under construction - pluggable HttpSession replication points - immediate, end-of-request-group, timed</li>
+	  </ul>
+	</p>
+
+      </p>
+
+      <p>
+	WADI currently supports the following J2EE containers and application servers:
+	<ul>
+	  <li>Tomcat 5.0.18+, 5.5.X</li>
+	  <li>Jetty 5.1.3+, 6.X</li>
+	  <li>OpenEJB (underway)</li>
+	  <li>Geronimo-1.0/Tomcat or Jetty (underway)</li>
+	  <li>JBoss-4.x/Tomcat or Jetty</li>
+	</ul>
+      </p>
+      <p>
+	WADI-2.0 is a complete rearchitecture and rewrite. New documentation is being entered into the <a href="http://docs.codehaus.org/pages/listpages-dirview.action?key=WADI">WADI Wiki</a>. We hope to have a 2.0 release out shortly.
+      </p>
+      <p>
+	WADI has always maintained close ties with <a href="http://geronimo.apache.org">Apache Geronimo</a> and has recently accepted the Geronimo community's invitation to become a Geronimo subproject.
+      </p>
+      <p>
+	Please use the <a href="./getting-started/index.html">Getting Started Page</a> to boostrap yourself into WADI's world.
+      </p>
+      <p>
+	Please browse our <a href="./faq.html">FAQ</a> for further details.
+      </p>
+      <p>
+	If you have problems or concerns with WADI, ask on the <a href="./mail-lists.html">users mailing list</a> or join us on irc at &lt;irc://irc.codehaus.org&gt; on <a href="irc://irc.codehaus.org/wadi">#wadi</a>.
+      </p>
+    </section>
+  </body>
+</document>