forked from jboss-msc/jboss-msc2
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
6 changed files
with
150 additions
and
16 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
MSC 2 User Guide | ||
|
||
* {{{#Preface} Preface}} | ||
|
||
[] | ||
|
||
* {Preface} | ||
|
||
TODO: write documentation |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
Overview | ||
|
||
When MSC 1 was implemented it was designed with a <<JBoss AS 5/6>> server type in mind. | ||
The initial idea behind MSC 1 was <everything is a deployment>. | ||
Later when <<JBoss AS 7>> and <<Wildfly>> were implemented on top of MSC 1 | ||
it became obvious it does not play nicely with management | ||
operations which typically need to know when particular operation is | ||
complete, whether any part of the operation failed and if it failed what | ||
the failures were (ideally in human-readable language). | ||
|
||
The main <<JBoss AS 7>> and <<Wildfly>> problem from MSC point of view is they cannot deterministically decide when a management | ||
operation is done. The MSC 1 state machine makes it impossible. | ||
Therefore there were many time-based hacks implemented in <<JBoss AS 7>> and <<Wildfly>> code bases to workaround this limitation. | ||
All these hacks were implemented using MSC 1 <<service listeners>> and later little | ||
bit optimized with <<Stability monitors>> which have been introduced in MSC 1.1. But both approaches exposed the same | ||
problem - they significantly degrade the MSC 1 performance. | ||
|
||
The origin MSC team analyzed MSC 1 and its usage in <<Wildfly>> and it came with these conclusions: | ||
|
||
* MSC 1 had great performance until service listeners and stability monitors were introduced | ||
|
||
* Wildfly management layer tries to emulate transactional behavior on top of MSC 1 | ||
|
||
* MSC 1 API is difficult to use (e.g. its complex injection/value framework) | ||
|
||
[] | ||
|
||
The outcome of this analysis was obvious - the need to create new <<MSC 2>> with goals: | ||
|
||
* it will be much more faster than MSC 1 | ||
|
||
* it will consume much less memory than MSC 1 | ||
|
||
* it will come with built-in support for transactions | ||
|
||
* its API will be radically simplified | ||
|
||
* its runtime model will be enhanced - no more one container for everything | ||
|
||
[] | ||
|
||
And here it goes. MSC 2 is in many usecases times faster than MSC 1 was. | ||
It consumes much less memory and it was designed with an idea <everything is a transaction>. | ||
It has more than {{{./apidocs/index.html}twice less}} classes than MSC 1 had. | ||
Its API is much more cleaner and easier to use. | ||
|
||
Dear users, welcome to the new era - {{{./guide.html}the MSC 2 world}}. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<project name="JBoss Modular Service Container 2"> | ||
<bannerLeft> | ||
<name>Modular Service Container 2</name> | ||
<href>http://github.com/jboss-msc/msc2</href> | ||
</bannerLeft> | ||
<bannerRight> | ||
<name>GitHub</name> | ||
<href>https://www.github.com/</href> | ||
<src>images/GitHub-Mark-64px.png</src> | ||
</bannerRight> | ||
<body> | ||
<menu name="Get MSC 2"> | ||
<item name="Downloads" href="http://github.com/jboss-msc/msc2"/> | ||
<item name="License" href="license.html"/> | ||
</menu> | ||
<menu name="Release (Current)"> | ||
<item name="Guide" href="guide.html"/> | ||
<item name="Javadoc" href="apidocs/index.html"/> | ||
<item name="Dependencies" href="dependencies.html"/> | ||
</menu> | ||
<menu name="Project Documentation"> | ||
<item name="About" href="index.html"/> | ||
<item name="Project Info" href="project-info.html"/> | ||
</menu> | ||
</body> | ||
</project> |