Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Tweaks to the readme file.

  • Loading branch information...
commit 9c0f6d124489d78aeded460d88d79cd8b510e289 1 parent 102ca31
@gredler authored
Showing with 4 additions and 10 deletions.
  1. +4 −10 README.md
View
14 README.md
@@ -10,15 +10,9 @@ An experiment in [Spring](http://www.springsource.org/about/) application startu
Introduction
------------
-Applications built around Spring tend to spend most of their startup time initializing singleton beans. These beans are instantiated serially on a single thread.
+Applications built around Spring tend to spend most of their startup time initializing singleton beans. These beans are instantiated serially on a single thread. However, computers have started to scale in terms of CPU cores, rather than in terms of CPU speed. As a result, it is very likely that computer upgrades going forward will exhibit only marginal performance improvements in terms of Spring application startup time.
-However, computers have started to scale in terms of CPU cores, rather than in terms of CPU speed.
-
-As a result, it is very likely that computer upgrades going forward will exhibit only marginal performance improvements in terms of Spring application startup time.
-
-The solution is to parallelize the initialization of all eager-init Spring beans in order to take advantage of all available CPU cores.
-
-This quick hack is an experiment in such an optimization, based heavily on the TestNG test [parallelization](http://beust.com/weblog/archives/000525.html) [work](http://beust.com/weblog/archives/000536.html) [done](http://code.google.com/p/testng/source/browse/trunk/src/main/org/testng/internal/thread/GroupThreadPoolExecutor.java) previously by Cedric Beust.
+The solution is to parallelize the initialization of all eager-init Spring beans in order to take advantage of all available CPU cores. This quick hack is an experiment in such an optimization, based heavily on the TestNG test [parallelization](http://beust.com/weblog/archives/000525.html) [work](http://beust.com/weblog/archives/000536.html) [done](http://code.google.com/p/testng/source/browse/trunk/src/main/org/testng/internal/thread/GroupThreadPoolExecutor.java) previously by Cedric Beust.
Can I run this myself?
----------------------
@@ -31,8 +25,8 @@ Yep. Just pull the code and run:
The first step runs a test, loading a sample Spring application context in both the standard _ClassPathXmlApplicationContext_ and in the custom _ThreadedClassPathXmlApplicationContext_ provided by this project. The run times of each load will be printed to the console.
-The test also generates graphs showing the dependencies between the various beans, as well as the state of each bean. White nodes represent beans that are waiting to be initialized but are waiting on their dependent beans to be initialized; yellow nodes represent beans that are waiting to be initialized and which are not blocked by any uninitialized dependencies; green nodes represent beans that are in the middle of being initialized; finally, grey nodes represent beans which have been successfully initialized.
+The test also generates a series of graphs illustrating the bean initialization process. Each graph shows the dependencies between the various beans, as well as the state of each bean. White nodes represent beans that are waiting to be initialized but are waiting on their dependent beans to be initialized; yellow nodes represent beans that are waiting to be initialized and which are not blocked by any uninitialized dependencies; green nodes represent beans that are in the middle of being initialized; finally, grey nodes represent beans which have been successfully initialized.
-The second step above converts these step-by-step graphs into PNG images, and the third step incorporates these images into an HTML file. This overview file will be available at _./target/graphs/graphs.html_.
+The second step above converts these step-by-step graphs into PNG images, and the third step incorporates these images into an HTML file. This overview file will be available at _target/graphs/graphs.html_. There's a sample overview file in the _sample_ directory.
**NOTE:** The second step requires that you have [Graphviz](http://www.graphviz.org/) installed.
Please sign in to comment.
Something went wrong with that request. Please try again.