Author: dejanb
Date: Fri Feb 17 10:32:47 2017
New Revision: 1006922

Log:
migration guide - configuration article

Added:
    websites/production/activemq/content/artemis/migration/configuration.html
Modified:
    websites/production/activemq/content/artemis/migration/index.html
    websites/production/activemq/content/artemis/migration/notice.html
    websites/production/activemq/content/artemis/migration/search_index.json

Added: websites/production/activemq/content/artemis/migration/configuration.html
==============================================================================
--- websites/production/activemq/content/artemis/migration/configuration.html 
(added)
+++ websites/production/activemq/content/artemis/migration/configuration.html 
Fri Feb 17 10:32:47 2017
@@ -0,0 +1,288 @@
+
+<!DOCTYPE HTML>
+<html lang="" >
+    <head>
+        <meta charset="UTF-8">
+        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
+        <title>Configuration · ActiveMQ Artemis Documentation</title>
+        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+        <meta name="description" content="">
+        <meta name="generator" content="GitBook 3.2.2">
+        
+        
+        
+    
+    <link rel="stylesheet" href="gitbook/style.css">
+
+    
+            
+                
+                <link rel="stylesheet" 
href="gitbook/gitbook-plugin-highlight/website.css">
+                
+            
+                
+                <link rel="stylesheet" 
href="gitbook/gitbook-plugin-search/search.css">
+                
+            
+                
+                <link rel="stylesheet" 
href="gitbook/gitbook-plugin-fontsettings/website.css">
+                
+            
+        
+
+    
+
+    
+        
+    
+        
+    
+        
+    
+        
+    
+        
+    
+        
+    
+
+        
+    
+    
+    <meta name="HandheldFriendly" content="true"/>
+    <meta name="viewport" content="width=device-width, initial-scale=1, 
user-scalable=no">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="apple-mobile-web-app-status-bar-style" content="black">
+    <link rel="apple-touch-icon-precomposed" sizes="152x152" 
href="gitbook/images/apple-touch-icon-precomposed-152.png">
+    <link rel="shortcut icon" href="gitbook/images/favicon.ico" 
type="image/x-icon">
+
+    
+    <link rel="next" href="notice.html" />
+    
+    
+    <link rel="prev" href="./" />
+    
+
+    </head>
+    <body>
+        
+<div class="book">
+    <div class="book-summary">
+        
+            
+<div id="book-search-input" role="search">
+    <input type="text" placeholder="Type to search" />
+</div>
+
+            
+                <nav role="navigation">
+                
+
+
+<ul class="summary">
+    
+    
+
+    
+
+    
+        
+        
+    
+        <li class="chapter " data-level="1.1" data-path="./">
+            
+                <a href="./">
+            
+                    
+                    Introduction
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter active" data-level="1.2" 
data-path="configuration.html">
+            
+                <a href="configuration.html">
+            
+                    
+                    Configuration
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.3" data-path="notice.html">
+            
+                <a href="notice.html">
+            
+                    
+                    Legal Notice
+            
+                </a>
+            
+
+            
+        </li>
+    
+
+    
+
+    <li class="divider"></li>
+
+    <li>
+        <a href="https://www.gitbook.com"; target="blank" class="gitbook-link">
+            Published with GitBook
+        </a>
+    </li>
+</ul>
+
+
+                </nav>
+            
+        
+    </div>
+
+    <div class="book-body">
+        
+            <div class="body-inner">
+                
+                    
+
+<div class="book-header" role="navigation">
+    
+
+    <!-- Title -->
+    <h1>
+        <i class="fa fa-circle-o-notch fa-spin"></i>
+        <a href="." >Configuration</a>
+    </h1>
+</div>
+
+
+
+
+                    <div class="page-wrapper" tabindex="-1" role="main">
+                        <div class="page-inner">
+                            
+<div id="book-search-results">
+    <div class="search-noresults">
+    
+                                <section class="normal markdown-section">
+                                
+                                <h1 id="configuration">Configuration</h1>
+<p>Once we download and install the broker we run into the first difference. 
With Artemis, you need to explicitly create a broker instance, while on 
ActiveMQ this step is optional. The whole idea of this step is to keep 
installation and configuration of the broker separate, which makes it easier to 
upgrade and maintain the broker in the future.</p>
+<p>So in order to start with Artemis you need execute something like this</p>
+<pre><code>$ bin/artemis create --user admin --password admin --role admins 
--allow-anonymous true /opt/artemis
+</code></pre><p>No matter where you installed your broker binaries, the broker 
instance will be now in <code>/opt/artemis</code> directory. The content of 
this directory will be familiar to every ActiveMQ user:</p>
+<ul>
+<li><code>bin</code> - contains shell scripts for managing the broker(start, 
stop, etc.)</li>
+<li><code>data</code> - is where the broker state lives (message store)</li>
+<li><code>etc</code> - contains broker configuration file (it&apos;s what 
<code>conf</code> directory is in ActiveMQ)</li>
+<li><code>log</code> - Artemis stores logs in this separate directory, unlike 
ActiveMQ which keeps them in <code>data</code> directory</li>
+<li><code>tmp</code> - is utility directory for temporary files</li>
+</ul>
+<p>Let&apos;s take a look now at the configuration in more details. The entry 
<code>etc/bootstrap.xml</code> file is here to set the basics, like the 
location of the main broker configuration file, utility apps like a web server 
and JAAS security.</p>
+<p>The main configuration file is <code>etc/broker.xml</code>. Similarly to 
ActiveMQ&apos;s <code>conf/activemq.xml</code>, this is where you configure 
most of the aspects of the broker, like connector ports, destination names, 
security policies, etc. We will go through this file in details in the 
following articles.</p>
+<p>The <code>etc/artemis.profile</code> file is similar to the 
<code>bin/env</code> file in ActiveMQ. Here you can configure environment 
variables for the broker, mostly regular JVM args related to SSL context, 
debugging, etc.</p>
+<p>There&apos;s no much difference in logging configuration between two 
brokers, so anyone familiar with Java logging systems in general will find 
herself at home here. The <code>etc/logging.properties</code> file is where 
it&apos;s all configured.</p>
+<p>Finally, we have JAAS configuration files (<code>login.config</code>, 
<code>artemis-users.properties</code> and 
<code>artemis-roles.properties</code>), which cover same roles as in ActiveMQ 
and we will go into more details on these in the article that covers 
security.</p>
+<p>After this brief walk through the location of different configuration 
aspects of Artemis, we&apos;re ready to start the broker. If you wish to start 
the broker in the foreground, you should execute</p>
+<pre><code>$ bin/artemis run
+</code></pre><p>This is the same as</p>
+<pre><code>$ bin/activemq console
+</code></pre><p>command in ActiveMQ.</p>
+<p>For running the broker as a service, Artemis provides a separate shell 
script <code>bin/artemis-service</code>. So you can run the broker in the 
background like</p>
+<pre><code>$ bin/artemis-service start
+</code></pre><p>This is the same as running ActiveMQ with</p>
+<pre><code> $ bin/activemq start
+</code></pre><p>After the start, you can check the broker status in 
<code>logs/artemis.log</code> file.</p>
+<p>Congratulations, you have your Artemis broker up and running. By default, 
Artemis starts <em>Openwire</em> connector on the same port as ActiveMQ, so 
clients can connect. To test this you can go to your existing ActiveMQ instance 
and run the following commands.</p>
+<pre><code>$ bin/activemq producer
+$ bin/activemq consumer
+</code></pre><p>You should see the messages flowing through the broker. 
Finally, we can stop the broker with</p>
+<pre><code>$ bin/artemis-service stop
+</code></pre><p>With this, our orienteering session around Artemis is 
finished. In the following articles we&apos;ll start digging deeper into the 
configuration details and differences between two brokers and see how that can 
affect your messaging applications.</p>
+
+                                
+                                </section>
+                            
+    </div>
+    <div class="search-results">
+        <div class="has-results">
+            
+            <h1 class="search-results-title"><span 
class='search-results-count'></span> results matching "<span 
class='search-query'></span>"</h1>
+            <ul class="search-results-list"></ul>
+            
+        </div>
+        <div class="no-results">
+            
+            <h1 class="search-results-title">No results matching "<span 
class='search-query'></span>"</h1>
+            
+        </div>
+    </div>
+</div>
+
+                        </div>
+                    </div>
+                
+            </div>
+
+            
+                
+                <a href="./" class="navigation navigation-prev " 
aria-label="Previous page: Introduction">
+                    <i class="fa fa-angle-left"></i>
+                </a>
+                
+                
+                <a href="notice.html" class="navigation navigation-next " 
aria-label="Next page: Legal Notice">
+                    <i class="fa fa-angle-right"></i>
+                </a>
+                
+            
+        
+    </div>
+
+    <script>
+        var gitbook = gitbook || [];
+        gitbook.push(function() {
+            
gitbook.page.hasChanged({"page":{"title":"Configuration","level":"1.2","depth":1,"next":{"title":"Legal
 
Notice","level":"1.3","depth":1,"path":"notice.md","ref":"notice.md","articles":[]},"previous":{"title":"Introduction","level":"1.1","depth":1,"path":"README.md","ref":"README.md","articles":[]},"dir":"ltr"},"config":{"plugins":[],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.c
 
ss","print":"styles/print.css"},"showLevel":false}},"github":"apache/activemq-artemis","theme":"default","githubHost":"https://github.com/","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"ActiveMQ
 Artemis 
Documentation","links":{"home":"http://activemq.apache.org/","issues":"http://activemq.apache.org/","contribute":"http://activemq.apache.org/contributing.html"},"gitbook":"3.x.x","description":"ActiveMQ
 Artemis Migration 
Guide"},"file":{"path":"configuration.md","mtime":"2017-02-17T10:29:36.000Z","type":"markdown"},"gitbook":{"version":"3.2.2","time":"2017-02-17T10:29:51.593Z"},"basePath":".","book":{"language":""}});
+        });
+    </script>
+</div>
+
+        
+    <script src="gitbook/gitbook.js"></script>
+    <script src="gitbook/theme.js"></script>
+    
+        
+        <script src="gitbook/gitbook-plugin-search/search-engine.js"></script>
+        
+    
+        
+        <script src="gitbook/gitbook-plugin-search/search.js"></script>
+        
+    
+        
+        <script src="gitbook/gitbook-plugin-lunr/lunr.min.js"></script>
+        
+    
+        
+        <script src="gitbook/gitbook-plugin-lunr/search-lunr.js"></script>
+        
+    
+        
+        <script src="gitbook/gitbook-plugin-sharing/buttons.js"></script>
+        
+    
+        
+        <script 
src="gitbook/gitbook-plugin-fontsettings/fontsettings.js"></script>
+        
+    
+
+    </body>
+</html>
+

Modified: websites/production/activemq/content/artemis/migration/index.html
==============================================================================
--- websites/production/activemq/content/artemis/migration/index.html (original)
+++ websites/production/activemq/content/artemis/migration/index.html Fri Feb 
17 10:32:47 2017
@@ -57,7 +57,7 @@
     <link rel="shortcut icon" href="gitbook/images/favicon.ico" 
type="image/x-icon">
 
     
-    <link rel="next" href="notice.html" />
+    <link rel="next" href="configuration.html" />
     
     
 
@@ -100,7 +100,20 @@
             
         </li>
     
-        <li class="chapter " data-level="1.2" data-path="notice.html">
+        <li class="chapter " data-level="1.2" data-path="configuration.html">
+            
+                <a href="configuration.html">
+            
+                    
+                    Configuration
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter " data-level="1.3" data-path="notice.html">
             
                 <a href="notice.html">
             
@@ -203,7 +216,7 @@
             
                 
                 
-                <a href="notice.html" class="navigation navigation-next 
navigation-unique" aria-label="Next page: Legal Notice">
+                <a href="configuration.html" class="navigation navigation-next 
navigation-unique" aria-label="Next page: Configuration">
                     <i class="fa fa-angle-right"></i>
                 </a>
                 
@@ -214,7 +227,7 @@
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            
gitbook.page.hasChanged({"page":{"title":"Introduction","level":"1.1","depth":1,"next":{"title":"Legal
 
Notice","level":"1.2","depth":1,"path":"notice.md","ref":"notice.md","articles":[]},"dir":"ltr"},"config":{"plugins":[],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"github":"apache/activemq-artemis","theme":"default","github
 
Host":"https://github.com/","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"ActiveMQ
 Artemis 
Documentation","links":{"home":"http://activemq.apache.org/","issues":"http://activemq.apache.org/","contribute":"http://activemq.apache.org/contributing.html"},"gitbook":"3.x.x","description":"ActiveMQ
 Artemis Migration 
Guide"},"file":{"path":"README.md","mtime":"2017-02-15T13:01:12.000Z","type":"markdown"},"gitbook":{"version":"3.2.2","time":"2017-02-15T13:04:43.128Z"},"basePath":".","book":{"language":""}});
+            
gitbook.page.hasChanged({"page":{"title":"Introduction","level":"1.1","depth":1,"next":{"title":"Configuration","level":"1.2","depth":1,"path":"configuration.md","ref":"configuration.md","articles":[]},"dir":"ltr"},"config":{"plugins":[],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"github":"apache/activemq-artemis","theme":"d
 
efault","githubHost":"https://github.com/","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"ActiveMQ
 Artemis 
Documentation","links":{"home":"http://activemq.apache.org/","issues":"http://activemq.apache.org/","contribute":"http://activemq.apache.org/contributing.html"},"gitbook":"3.x.x","description":"ActiveMQ
 Artemis Migration 
Guide"},"file":{"path":"README.md","mtime":"2017-02-17T10:01:41.000Z","type":"markdown"},"gitbook":{"version":"3.2.2","time":"2017-02-17T10:29:51.593Z"},"basePath":".","book":{"language":""}});
         });
     </script>
 </div>

Modified: websites/production/activemq/content/artemis/migration/notice.html
==============================================================================
--- websites/production/activemq/content/artemis/migration/notice.html 
(original)
+++ websites/production/activemq/content/artemis/migration/notice.html Fri Feb 
17 10:32:47 2017
@@ -58,7 +58,7 @@
 
     
     
-    <link rel="prev" href="./" />
+    <link rel="prev" href="configuration.html" />
     
 
     </head>
@@ -100,7 +100,20 @@
             
         </li>
     
-        <li class="chapter active" data-level="1.2" data-path="notice.html">
+        <li class="chapter " data-level="1.2" data-path="configuration.html">
+            
+                <a href="configuration.html">
+            
+                    
+                    Configuration
+            
+                </a>
+            
+
+            
+        </li>
+    
+        <li class="chapter active" data-level="1.3" data-path="notice.html">
             
                 <a href="notice.html">
             
@@ -198,7 +211,7 @@ limitations under the License.</p>
 
             
                 
-                <a href="./" class="navigation navigation-prev 
navigation-unique" aria-label="Previous page: Introduction">
+                <a href="configuration.html" class="navigation navigation-prev 
navigation-unique" aria-label="Previous page: Configuration">
                     <i class="fa fa-angle-left"></i>
                 </a>
                 
@@ -210,7 +223,7 @@ limitations under the License.</p>
     <script>
         var gitbook = gitbook || [];
         gitbook.push(function() {
-            gitbook.page.hasChanged({"page":{"title":"Legal 
Notice","level":"1.2","depth":1,"previous":{"title":"Introduction","level":"1.1","depth":1,"path":"README.md","ref":"README.md","articles":[]},"dir":"ltr"},"config":{"plugins":[],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"github":"apache/activemq-artemis","theme":"default","gi
 
thubHost":"https://github.com/","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"ActiveMQ
 Artemis 
Documentation","links":{"home":"http://activemq.apache.org/","issues":"http://activemq.apache.org/","contribute":"http://activemq.apache.org/contributing.html"},"gitbook":"3.x.x","description":"ActiveMQ
 Artemis Migration 
Guide"},"file":{"path":"notice.md","mtime":"2015-06-29T10:43:03.000Z","type":"markdown"},"gitbook":{"version":"3.2.2","time":"2017-02-15T13:04:43.128Z"},"basePath":".","book":{"language":""}});
+            gitbook.page.hasChanged({"page":{"title":"Legal 
Notice","level":"1.3","depth":1,"previous":{"title":"Configuration","level":"1.2","depth":1,"path":"configuration.md","ref":"configuration.md","articles":[]},"dir":"ltr"},"config":{"plugins":[],"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"github":"apache/activemq-artemis","theme
 
":"default","githubHost":"https://github.com/","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"ActiveMQ
 Artemis 
Documentation","links":{"home":"http://activemq.apache.org/","issues":"http://activemq.apache.org/","contribute":"http://activemq.apache.org/contributing.html"},"gitbook":"3.x.x","description":"ActiveMQ
 Artemis Migration 
Guide"},"file":{"path":"notice.md","mtime":"2017-02-15T13:24:47.000Z","type":"markdown"},"gitbook":{"version":"3.2.2","time":"2017-02-17T10:29:51.593Z"},"basePath":".","book":{"language":""}});
         });
     </script>
 </div>

Modified: 
websites/production/activemq/content/artemis/migration/search_index.json
==============================================================================
--- websites/production/activemq/content/artemis/migration/search_index.json 
(original)
+++ websites/production/activemq/content/artemis/migration/search_index.json 
Fri Feb 17 10:32:47 2017
@@ -1 +1 @@
-{"index":{"version":"0.5.12","fields":[{"name":"title","boost":10},{"name":"keywords","boost":15},{"name":"body","boost":1}],"ref":"url","documentStore":{"store":{"./":["(and","(befor","(non","(queues)","(synchron","(topics)","5.x","achiev","activemq","activemq,","ad","adapt","address","address.","addresses.","advis","affect","again","again,","aim","although","amqp","anoth","anycast","apach","append","approach.","appropri","architectur","arrived.","artemi","artemis,","artemis.","articles.","aspect","assum","avail","awar","base","basic","batches.","becom","befor","between","big","block","broad","broker","broker).","broker.","brokers.","cach","can't","carefulli","case,","centric.","certain","choos","citizens.","class","client","clients.","command","concept","conceptu","configur","confusions.","connect","consist","consum","consumer.","core","cover","current","cursors,","data","deal","default.","design","destin","detail","develop","differ","differences?","dig","directli","dispatch","don
 
e","done,","done.","durabl","dure","earli","even","example,","experienc","explain","fairli","familiar","fast","few","file","fill","first","focus","framework.","freed,","futur","goal","good","guid","guides.","happen","help","here","here?","hit","hold","implement","implementation,","import","incom","index","index,","index.","inner","insid","intact.","interchangeable,","intern","internally.","introduct","io","it'","it.","jm","job,","journal","journal.","kahadb","kahadb.","keep","kept","know","later","layer","layer,","lead","learn","leav","let'","lot","main","maintain","make","manual","mean","mechan","memori","memory,","memory.","messag","messages'","migrat","migration,","migration.","minute.","more","move","mqtt","multicast","need","needed.","netty,","new","nio","non","notabl","on","onc","one)","one).","open","openwir","openwire.","order","out","outside,","packets)","page","part","peopl","plan","planed.","point","polici","posit","principles,","process","produc","project","properly.","p
 
rotocol","protocols,","protocols.","publish","pull","queue","queue(s)","queues,","read","readi","recreat","regard.","replac","retriev","rout","run","runtime.","same","scenario","scheme","see","seem","semantics,","sequenti","sequentially,","server","set","side","similar,","situat","sourc","space","start","stops.","store","store,","store.","strategi","subject","subscrib","subscript","subtl","support","system","talk","tcp","term","that'","that,","theay","them.","there'","there'l","there.","these,","thing","this,","time","took","topic","track","transition.","translat","tri","two","type","understand","up,","us","user","valuabl","veri","version","view","want","we'll","what'","whole","within","work","you'r"],"notice.html":["\"a","\"license\");","(asf)","(the","2.0","addit","agre","agreements.","apach","applic","asf","basis,","complianc","condit","contributor","copi","copyright","distribut","except","express","file","foundat","govern","http://www.apache.org/licenses/licens","implied.","info
 
rm","is\"","kind,","languag","law","legal","licens","license,","license.","limit","more","notic","obtain","on","ownership.","permiss","regard","requir","see","softwar","specif","under","unless","us","version","warranti","without","work","writing,"]},"length":2},"tokenStore":{"root":{"2":{"docs":{},".":{"0":{"docs":{"notice.html":{"ref":"notice.html","tf":0.027777777777777776}}},"docs":{}}},"5":{"docs":{},".":{"docs":{},"x":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}},"docs":{},"(":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"s":{"docs":{},"f":{"docs":{},")":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}},"b":{"docs":{},"e":{"docs":{},"f":{"docs":{},"o":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"n":{"docs":{},"o":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"q":{"docs":{},"u":{"docs":{},"e":{"docs":{},"u":{"docs":{},"e":{"docs"
 
:{},"s":{"docs":{},")":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"s":{"docs":{},"y":{"docs":{},"n":{"docs":{},"c":{"docs":{},"h":{"docs":{},"r":{"docs":{},"o":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"t":{"docs":{},"o":{"docs":{},"p":{"docs":{},"i":{"docs":{},"c":{"docs":{},"s":{"docs":{},")":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"h":{"docs":{},"e":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{},"i":{"docs":{},"e":{"docs":{},"v":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"t":{"docs":{},"i":{"docs":{},"v":{"docs":{},"e":{"docs":{},"m":{"docs":{},"q":{"docs":{"./":{"ref":"./","tf":0.01717557251908397}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},"a":{"docs":{},"p":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"d
 
":{"docs":{},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.009541984732824428}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"e":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}}},"i":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}},"v":{"docs":{},"i":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"f":{"docs":{},"f":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"g":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"r":{"docs":{},"e":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}},"e":{"docs":{},"m":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},"s":{"docs":{},".":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888
 
888888}}}}}}}}}}}},"i":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"l":{"docs":{},"t":{"docs":{},"h":{"docs":{},"o":{"docs":{},"u":{"docs":{},"g":{"docs":{},"h":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"m":{"docs":{},"q":{"docs":{},"p":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"n":{"docs":{},"o":{"docs":{},"t":{"docs":{},"h":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"y":{"docs":{},"c":{"docs":{},"a":{"docs":{},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"p":{"docs":{},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854},"notice.html":{"ref":"notice.html","tf":0.027777777777777776}}}}},"p":{"docs":{},"e":{"docs":{},"n":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"r":{"docs":{},"o":{"docs":{},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"p":{"do
 
cs":{},"r":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"r":{"docs":{},"c":{"docs":{},"h":{"docs":{},"i":{"docs":{},"t":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"u":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}}}}},"r":{"docs":{},"i":{"docs":{},"v":{"docs":{},"e":{"docs":{},"d":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"t":{"docs":{},"e":{"docs":{},"m":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.009541984732824428}},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}},".":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}},"i":{"docs":{},"c":{"docs":{},"l":{"docs":{},"e":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}}}},"s":{"docs":{},"p":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"./"
 
:{"ref":"./","tf":0.0019083969465648854}}}}}},"s":{"docs":{},"u":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}},"f":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}},"v":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"w":{"docs":{},"a":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"b":{"docs":{},"a":{"docs":{},"s":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"i":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}},"s":{"docs":{},",":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}},"t":{"docs":{},"c":{"docs":{},"h":{"docs":{},"e":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"e":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"f":{"docs":{},"o":{"docs":{},"r":{"docs":{"./":{"ref":"./",
 
"tf":0.0019083969465648854}}}}},"t":{"docs":{},"w":{"docs":{},"e":{"docs":{},"e":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}}}}}}},"i":{"docs":{},"g":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"l":{"docs":{},"o":{"docs":{},"c":{"docs":{},"k":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"r":{"docs":{},"o":{"docs":{},"a":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"k":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.019083969465648856}},")":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}}}}}}}},"c":{"docs":{},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}},"n":{"docs":{},"'":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"r":{"docs":{},"e":{"docs":{},"f":{"docs":{},"u"
 
:{"docs":{},"l":{"docs":{},"l":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"s":{"docs":{},"e":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},"r":{"docs":{},"i":{"docs":{},"c":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"r":{"docs":{},"t":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"h":{"docs":{},"o":{"docs":{},"o":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"i":{"docs":{},"t":{"docs":{},"i":{"docs":{},"z":{"docs":{},"e":{"docs":{},"n":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"l":{"docs":{},"a":{"docs":{},"s":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"i":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}},"s":{"docs":{},".":{"docs"
 
:{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"o":{"docs":{},"m":{"docs":{},"m":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"p":{"docs":{},"l":{"docs":{},"i":{"docs":{},"a":{"docs":{},"n":{"docs":{},"c":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}},"n":{"docs":{},"c":{"docs":{},"e":{"docs":{},"p":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}},"u":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"f":{"docs":{},"i":{"docs":{},"g":{"docs":{},"u":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"u":{"docs":{},"s":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"n":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"s":{"docs":{},"i":{"docs":{},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","
 
tf":0.003816793893129771}}}}},"u":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},"e":{"docs":{},"r":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"d":{"docs":{},"i":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}},"t":{"docs":{},"r":{"docs":{},"i":{"docs":{},"b":{"docs":{},"u":{"docs":{},"t":{"docs":{},"o":{"docs":{},"r":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}}}},"r":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"v":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}}}},"p":{"docs":{},"i":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}},"y":{"docs":{},"r":{"docs":{},"i":{"docs":{},"g":{"docs":{},"h":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}}},"u":{"docs":{},"r":{"docs":{},"r":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"
 
docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"s":{"docs":{},"o":{"docs":{},"r":{"docs":{},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"d":{"docs":{},"a":{"docs":{},"t":{"docs":{},"a":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"e":{"docs":{},"a":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"f":{"docs":{},"a":{"docs":{},"u":{"docs":{},"l":{"docs":{},"t":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"s":{"docs":{},"i":{"docs":{},"g":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"t":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"t":{"docs":{},"a":{"docs":{},"i":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"v":{"docs":{},"e":{"docs":{},"l":{"docs":{},"o":{"docs":{},"p":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"i":{"docs":{},"f":{"docs":{},"f":{"docs":{
 
},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.03435114503816794}},"e":{"docs":{},"n":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"?":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}}}},"g":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"r":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{},"l":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"s":{"docs":{},"p":{"docs":{},"a":{"docs":{},"t":{"docs":{},"c":{"docs":{},"h":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}},"t":{"docs":{},"r":{"docs":{},"i":{"docs":{},"b":{"docs":{},"u":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.041666666666666664}}}}}}}}}},"o":{"docs":{},"n":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"u":{"docs":{},"r":{"docs":{},"a":{"docs":{},"b":{"docs":{},"l":{"docs
 
":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"e":{"docs":{},"a":{"docs":{},"r":{"docs":{},"l":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"v":{"docs":{},"e":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"x":{"docs":{},"a":{"docs":{},"m":{"docs":{},"p":{"docs":{},"l":{"docs":{},"e":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"p":{"docs":{},"e":{"docs":{},"r":{"docs":{},"i":{"docs":{},"e":{"docs":{},"n":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}},"l":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"r":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"c":{"docs":{},"e":{"docs":{},"p":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}
 
,"f":{"docs":{},"a":{"docs":{},"i":{"docs":{},"r":{"docs":{},"l":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"m":{"docs":{},"i":{"docs":{},"l":{"docs":{},"i":{"docs":{},"a":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"e":{"docs":{},"w":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"i":{"docs":{},"l":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565},"notice.html":{"ref":"notice.html","tf":0.041666666666666664}}},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"r":{"docs":{},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"o":{"docs":{},"c":{"docs":{},"u":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"a":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}},"r":{"docs"
 
:{},"a":{"docs":{},"m":{"docs":{},"e":{"docs":{},"w":{"docs":{},"o":{"docs":{},"r":{"docs":{},"k":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"e":{"docs":{},"e":{"docs":{},"d":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"u":{"docs":{},"t":{"docs":{},"u":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"g":{"docs":{},"o":{"docs":{},"a":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"o":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"v":{"docs":{},"e":{"docs":{},"r":{"docs":{},"n":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"u":{"docs":{},"i":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.011450381679389313}},"e":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"h":{"docs":{},"a":{"docs":{},"p":{"docs":{},"p":{"docs":{},"e":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0
 
.0019083969465648854}}}}}}},"e":{"docs":{},"l":{"docs":{},"p":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}},"r":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},"?":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"i":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"o":{"docs":{},"l":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"t":{"docs":{},"t":{"docs":{},"p":{"docs":{},":":{"docs":{},"/":{"docs":{},"/":{"docs":{},"w":{"docs":{},"w":{"docs":{},"w":{"docs":{},".":{"docs":{},"a":{"docs":{},"p":{"docs":{},"a":{"docs":{},"c":{"docs":{},"h":{"docs":{},"e":{"docs":{},".":{"docs":{},"o":{"docs":{},"r":{"docs":{},"g":{"docs":{},"/":{"docs":{},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{},"e":{"docs":{},"n":{"docs":{},"s":{"docs":{},"e":{"docs":{},"s":{"docs":{},"/":{"docs":{},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{},"e":{"docs":{},"n":{"docs":{},"s":{"docs":{"notice.html":{"ref":"notice.html","
 
tf":0.013888888888888888}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}},"i":{"docs":{},"m":{"docs":{},"p":{"docs":{},"l":{"docs":{},"e":{"docs":{},"m":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.015267175572519083}},"a":{"docs":{},"t":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}}}}},"i":{"docs":{},"e":{"docs":{},"d":{"docs":{},".":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}}}}},"n":{"docs":{},"c":{"docs":{},"o":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}},"d":{"docs":{},"e":{"docs":{},"x":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"n":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.001908
 
3969465648854}}}}},"s":{"docs":{},"i":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"t":{"docs":{},"a":{"docs":{},"c":{"docs":{},"t":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"e":{"docs":{},"r":{"docs":{},"c":{"docs":{},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{},"g":{"docs":{},"e":{"docs":{},"a":{"docs":{},"b":{"docs":{},"l":{"docs":{},"e":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}}}}},"n":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}},"a":{"docs":{},"l":{"docs":{},"l":{"docs":{},"y":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"r":{"docs":{},"o":{"docs":{},"d":{"docs":{},"u":{"docs":{},"c":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":10}}}}}}}}},"f":{"docs":{},"o":{"docs":{},"r":{"docs":{},"m":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"o":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}},"t":{"docs":{},"'":{
 
"docs":{"./":{"ref":"./","tf":0.007633587786259542}}},".":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}},"s":{"docs":{},"\"":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}},"j":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}},"o":{"docs":{},"b":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"u":{"docs":{},"r":{"docs":{},"n":{"docs":{},"a":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.011450381679389313}},".":{"docs":{"./":{"ref":"./","tf":0.009541984732824428}}}}}}}}}},"k":{"docs":{},"a":{"docs":{},"h":{"docs":{},"a":{"docs":{},"d":{"docs":{},"b":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"e":{"docs":{},"e":{"docs":{},"p":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}},"p":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"n":{"docs":{},"o":{"docs":{},"w":{"docs":{"./":{"ref":"./","tf":0.001908
 
3969465648854}}}}},"i":{"docs":{},"n":{"docs":{},"d":{"docs":{},",":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"l":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"y":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"n":{"docs":{},"g":{"docs":{},"u":{"docs":{},"a":{"docs":{},"g":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"w":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}},"e":{"docs":{},"a":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"r":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"v":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"t":{"docs":{},"'":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"g":{"docs":{},"a":{"docs":{},"l":{"docs":{"notice.html"
 
:{"ref":"notice.html","tf":5.013888888888889}}}}}},"o":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"i":{"docs":{},"c":{"docs":{},"e":{"docs":{},"n":{"docs":{},"s":{"docs":{"notice.html":{"ref":"notice.html","tf":0.08333333333333333}},"e":{"docs":{},",":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}},".":{"docs":{"notice.html":{"ref":"notice.html","tf":0.027777777777777776}}}}}}}},"m":{"docs":{},"i":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"m":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},"t":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"k":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"n":{"docs":{},"u":{"docs":{},"a":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"e":{"docs":{},"a":{"docs":{},"n":{"docs":{"./":{"r
 
ef":"./","tf":0.007633587786259542}}}},"c":{"docs":{},"h":{"docs":{},"a":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"m":{"docs":{},"o":{"docs":{},"r":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}},"y":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"s":{"docs":{},"s":{"docs":{},"a":{"docs":{},"g":{"docs":{"./":{"ref":"./","tf":0.04770992366412214}},"e":{"docs":{},"s":{"docs":{},"'":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"i":{"docs":{},"g":{"docs":{},"r":{"docs":{},"a":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.009541984732824428}},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},".":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}}}}}}}},"n":{"docs":{},"u":{"docs":{},"t":{"docs":{},"e":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}
 
}}}}}},"o":{"docs":{},"r":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.013358778625954198},"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}},"v":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"q":{"docs":{},"t":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"u":{"docs":{},"l":{"docs":{},"t":{"docs":{},"i":{"docs":{},"c":{"docs":{},"a":{"docs":{},"s":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}}}}},"n":{"docs":{},"e":{"docs":{},"e":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.013358778625954198}},"e":{"docs":{},"d":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"t":{"docs":{},"t":{"docs":{},"y":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"w":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"i":{"docs":{},"o":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}},"o":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019
 
083969465648854}}},"t":{"docs":{},"a":{"docs":{},"b":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"i":{"docs":{},"c":{"docs":{"notice.html":{"ref":"notice.html","tf":5.027777777777778}}}}}}},"o":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565},"notice.html":{"ref":"notice.html","tf":0.013888888888888888}},"c":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"e":{"docs":{},")":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"p":{"docs":{},"e":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},"w":{"docs":{},"i":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}},"e":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"r":{"docs":{},"d":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}}}}},"u":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}},"s":{
 
"docs":{},"i":{"docs":{},"d":{"docs":{},"e":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"b":{"docs":{},"t":{"docs":{},"a":{"docs":{},"i":{"docs":{},"n":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"w":{"docs":{},"n":{"docs":{},"e":{"docs":{},"r":{"docs":{},"s":{"docs":{},"h":{"docs":{},"i":{"docs":{},"p":{"docs":{},".":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}}}}},"p":{"docs":{},"a":{"docs":{},"c":{"docs":{},"k":{"docs":{},"e":{"docs":{},"t":{"docs":{},"s":{"docs":{},")":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"g":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.013358778625954198}}}},"r":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"e":{"docs":{},"o":{"docs":{},"p":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"r":{"docs":{},"m":{"docs":{},"i":{"docs":{},"s":{"docs":{},"s":{"docs":{"notice.html":{"ref":"notic
 
e.html","tf":0.013888888888888888}}}}}}}},"l":{"docs":{},"a":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}},"e":{"docs":{},"d":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"o":{"docs":{},"i":{"docs":{},"n":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.009541984732824428}}}}},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"s":{"docs":{},"i":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"r":{"docs":{},"i":{"docs":{},"n":{"docs":{},"c":{"docs":{},"i":{"docs":{},"p":{"docs":{},"l":{"docs":{},"e":{"docs":{},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}}},"o":{"docs":{},"c":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"d":{"docs":{},"u":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"
 
t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"p":{"docs":{},"e":{"docs":{},"r":{"docs":{},"l":{"docs":{},"y":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"t":{"docs":{},"o":{"docs":{},"c":{"docs":{},"o":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}}},"u":{"docs":{},"b":{"docs":{},"l":{"docs":{},"i":{"docs":{},"s":{"docs":{},"h":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}},"l":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"q":{"docs":{},"u":{"docs":{},"e":{"docs":{},"u":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}},"(":{"docs":{},"s":{"docs":{},")":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"r":{"docs":{},"e":{"docs"
 
:{},"a":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"c":{"docs":{},"r":{"docs":{},"e":{"docs":{},"a":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"g":{"docs":{},"a":{"docs":{},"r":{"docs":{},"d":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"p":{"docs":{},"l":{"docs":{},"a":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"t":{"docs":{},"r":{"docs":{},"i":{"docs":{},"e":{"docs":{},"v":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"q":{"docs":{},"u":{"docs":{},"i":{"docs":{},"r":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.013358778625954198}}}}},"u":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}},"t":{"docs":{},"i":{"docs"
 
:{},"m":{"docs":{},"e":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"s":{"docs":{},"a":{"docs":{},"m":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}},"c":{"docs":{},"e":{"docs":{},"n":{"docs":{},"a":{"docs":{},"r":{"docs":{},"i":{"docs":{},"o":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"h":{"docs":{},"e":{"docs":{},"m":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"e":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.003816793893129771},"notice.html":{"ref":"notice.html","tf":0.027777777777777776}},"m":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"m":{"docs":{},"a":{"docs":{},"n":{"docs":{},"t":{"docs":{},"i":{"docs":{},"c":{"docs":{},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}}}},"q":{"docs":{},"u":{"docs":{},"e":{"docs":{},"n":{"docs":{},"t":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}},"a":{"docs":{},"l":{"docs"
 
:{},"l":{"docs":{},"y":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}}}}},"r":{"docs":{},"v":{"docs":{},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"i":{"docs":{},"d":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"m":{"docs":{},"i":{"docs":{},"l":{"docs":{},"a":{"docs":{},"r":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"t":{"docs":{},"u":{"docs":{},"a":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}},"o":{"docs":{},"u":{"docs":{},"r":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"f":{"docs":{},"t":{"docs":{},"w":{"docs":{},"a":{"docs":{},"r":{"docs":{"notice.html":{"ref":"notice.html","tf":0.027777777777777776}}}}}}}},"p":{"docs":{},"a":{"docs":{},"c":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"e":{"docs":{},"c":{"docs":{
 
},"i":{"docs":{},"f":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"t":{"docs":{},"a":{"docs":{},"r":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}}},"o":{"docs":{},"p":{"docs":{},"s":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"r":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.011450381679389313}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},".":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"r":{"docs":{},"a":{"docs":{},"t":{"docs":{},"e":{"docs":{},"g":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}},"u":{"docs":{},"b":{"docs":{},"j":{"docs":{},"e":{"docs":{},"c":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"s":{"docs":{},"c":{"docs":{},"r":{"docs":{},"i":{"docs":{},"b":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}},"p":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"t":{"docs":
 
{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"p":{"docs":{},"p":{"docs":{},"o":{"docs":{},"r":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}},"y":{"docs":{},"s":{"docs":{},"t":{"docs":{},"e":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}}},"t":{"docs":{},"a":{"docs":{},"l":{"docs":{},"k":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}}},"c":{"docs":{},"p":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"e":{"docs":{},"r":{"docs":{},"m":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"h":{"docs":{},"a":{"docs":{},"t":{"docs":{},"'":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"e":{"docs":{},"a":{"docs":{},"y":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"m":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"r":{"docs":{},"e":{"docs":{},"'":{"docs":{"./":{"ref":"./","tf":0.00572519
 
08396946565}},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"s":{"docs":{},"e":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}},"s":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}},"i":{"docs":{},"m":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}},"o":{"docs":{},"o":{"docs":{},"k":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"p":{"docs":{},"i":{"docs":{},"c":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}}}}},"r":{"docs":{},"a":{"docs":{},"c":{"docs":{},"k":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"n":{"docs":{},"s":{"docs":{},"i":{"docs":{},"t":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{},".":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"l":{"docs":{},"a":{"docs":{},"t":{"docs":{"./":{"
 
ref":"./","tf":0.0019083969465648854}}}}}}}},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"w":{"docs":{},"o":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}}},"y":{"docs":{},"p":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"u":{"docs":{},"n":{"docs":{},"d":{"docs":{},"e":{"docs":{},"r":{"docs":{"notice.html":{"ref":"notice.html","tf":0.05555555555555555}},"s":{"docs":{},"t":{"docs":{},"a":{"docs":{},"n":{"docs":{},"d":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}}}},"l":{"docs":{},"e":{"docs":{},"s":{"docs":{},"s":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}},"p":{"docs":{},",":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"s":{"docs":{"./":{"ref":"./","tf":0.01717557251908397},"notice.html":{"ref":"notice.html","tf":0.013888888888888888}},"e":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.0057251908396946565}}}}}},"v":{"docs":{},"a":{"docs":{},"l":{"docs":{},"u":{"docs":{},"a
 
":{"docs":{},"b":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}}}},"e":{"docs":{},"r":{"docs":{},"i":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}},"s":{"docs":{},"i":{"docs":{},"o":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854},"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}},"i":{"docs":{},"e":{"docs":{},"w":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}}},"w":{"docs":{},"a":{"docs":{},"n":{"docs":{},"t":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"r":{"docs":{},"r":{"docs":{},"a":{"docs":{},"n":{"docs":{},"t":{"docs":{},"i":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}},"e":{"docs":{},"'":{"docs":{},"l":{"docs":{},"l":{"docs":{"./":{"ref":"./","tf":0.007633587786259542}}}}}},"h":{"docs":{},"a":{"docs":{},"t":{"docs":{},"'":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}}},"o":{"docs":{},"l":{"docs":{},"e":{"docs":{"./":{"ref":"./","tf":0.0019
 
083969465648854}}}}}},"i":{"docs":{},"t":{"docs":{},"h":{"docs":{},"i":{"docs":{},"n":{"docs":{"./":{"ref":"./","tf":0.0019083969465648854}}}},"o":{"docs":{},"u":{"docs":{},"t":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}},"o":{"docs":{},"r":{"docs":{},"k":{"docs":{"./":{"ref":"./","tf":0.007633587786259542},"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}},"r":{"docs":{},"i":{"docs":{},"t":{"docs":{},"i":{"docs":{},"n":{"docs":{},"g":{"docs":{},",":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}}}}}}}}},"y":{"docs":{},"o":{"docs":{},"u":{"docs":{},"'":{"docs":{},"r":{"docs":{"./":{"ref":"./","tf":0.003816793893129771}}}}}}},"\"":{"docs":{},"a":{"docs":{"notice.html":{"ref":"notice.html","tf":0.013888888888888888}}},"l":{"docs":{},"i":{"docs":{},"c":{"docs":{},"e":{"docs":{},"n":{"docs":{},"s":{"docs":{},"e":{"docs":{},"\"":{"docs":{},")":{"docs":{},";":{"docs":{"notice.html":{"ref":"notice.html","tf":0.01388888
 
8888888888}}}}}}}}}}}}}},"length":337},"corpusTokens":["\"a","\"license\");","(and","(asf)","(befor","(non","(queues)","(synchron","(the","(topics)","2.0","5.x","achiev","activemq","activemq,","ad","adapt","addit","address","address.","addresses.","advis","affect","again","again,","agre","agreements.","aim","although","amqp","anoth","anycast","apach","append","applic","approach.","appropri","architectur","arrived.","artemi","artemis,","artemis.","articles.","asf","aspect","assum","avail","awar","base","basic","basis,","batches.","becom","befor","between","big","block","broad","broker","broker).","broker.","brokers.","cach","can't","carefulli","case,","centric.","certain","choos","citizens.","class","client","clients.","command","complianc","concept","conceptu","condit","configur","confusions.","connect","consist","consum","consumer.","contributor","copi","copyright","core","cover","current","cursors,","data","deal","default.","design","destin","detail","develop","differ","difference
 
s?","dig","directli","dispatch","distribut","done","done,","done.","durabl","dure","earli","even","example,","except","experienc","explain","express","fairli","familiar","fast","few","file","fill","first","focus","foundat","framework.","freed,","futur","goal","good","govern","guid","guides.","happen","help","here","here?","hit","hold","http://www.apache.org/licenses/licens","implement","implementation,","implied.","import","incom","index","index,","index.","inform","inner","insid","intact.","interchangeable,","intern","internally.","introduct","io","is\"","it'","it.","jm","job,","journal","journal.","kahadb","kahadb.","keep","kept","kind,","know","languag","later","law","layer","layer,","lead","learn","leav","legal","let'","licens","license,","license.","limit","lot","main","maintain","make","manual","mean","mechan","memori","memory,","memory.","messag","messages'","migrat","migration,","migration.","minute.","more","move","mqtt","multicast","need","needed.","netty,","new","nio","no
 
n","notabl","notic","obtain","on","onc","one)","one).","open","openwir","openwire.","order","out","outside,","ownership.","packets)","page","part","peopl","permiss","plan","planed.","point","polici","posit","principles,","process","produc","project","properly.","protocol","protocols,","protocols.","publish","pull","queue","queue(s)","queues,","read","readi","recreat","regard","regard.","replac","requir","retriev","rout","run","runtime.","same","scenario","scheme","see","seem","semantics,","sequenti","sequentially,","server","set","side","similar,","situat","softwar","sourc","space","specif","start","stops.","store","store,","store.","strategi","subject","subscrib","subscript","subtl","support","system","talk","tcp","term","that'","that,","theay","them.","there'","there'l","there.","these,","thing","this,","time","took","topic","track","transition.","translat","tri","two","type","under","understand","unless","up,","us","user","valuabl","veri","version","view","want","warranti","we'll
 
","what'","whole","within","without","work","writing,","you'r"],"pipeline":["stopWordFilter","stemmer"]},"store":{"./":{"url":"./","title":"Introduction","keywords":"","body":"\nApache
 ActiveMQ Artemis Migration Guide\nAs more and more people start using Artemis, 
it's valuable to have a migration guide that will help experienced ActiveMQ 
users adapt to the new broker. From outside, two brokers might seem very 
similar, but there are subtle differences in their inner-workings that can lead 
to confusions. The goal of this guide is to explain these differences and help 
make a transition.\nMigration is a fairly broad term in systems like these, so 
what are we talking about here? This guide will be focused only on broker 
server migration. We'll assume that the current system is a working ActiveMQ 
5.x broker with OpenWire JMS clients. We'll see how we can replace the broker 
with Artemis and leave the clients intact. This guide will not cover a message 
store migration. That topic and aspect
 s of migrating clients that use some other protocol will be the subject of 
future guides.\nThis guide is aimed at experienced ActiveMQ users that want to 
learn more about what's different in Artemis. We will assume that you know the 
concepts that are covered in these articles. They will not be explained from 
the first principles, for that you're advised to see appropriate manuals of the 
ActiveMQ and Artemis brokers.\nBefore we dig into more details on the 
migration, let's talk about basic conceptual differences between two 
brokers.\nArchitectural differences\nAlthough they are designed to do the same 
job, things are done differently internally. Here are some of the most notable 
architectural differences you need to be aware of when you're planning the 
migration.\nIn ActiveMQ, we have a few different implementations of the IO 
connectivity layer, like tcp (synchronous one) and nio (non-blocking one). In 
Artemis, the IO layer is implemented using Netty, which is a nio framework. 
This m
 eans that there's no more need to choose between different implementations as 
the non-blocking one is used by default.\nThe other important part of every 
broker is a message store. Most of the ActiveMQ users are familiar with KahaDB. 
It consists of a message journal for fast sequential storing of messages (and 
other command packets) and an index for retrieving messages when 
needed.\nArtemis has its own message store. It consists only of the append-only 
message journal. Because of the differences in how paging is done, there's no 
need for the message index. We'll talk more about that in a minute. It's 
important to say at this point that these two stores are not interchangeable, 
and data migration if needed must be carefully planed.\nWhat do we mean by 
paging differences? Paging is the process that happens when broker can't hold 
all incoming messages in its memory. The strategy of how to deal with this 
situation differs between two brokers. ActiveMQ have cursors, which are 
basically a
  cache of messages ready to be dispatched to the consumer. It will try to keep 
all incoming messages in there. When we run out of the the available memory, 
messages are added to the store, but the caching stops. When the space become 
available again, the broker will fill the cache again by pulling messages from 
the store in batches. Because of this, we need to read the journal from time to 
time during a broker runtime. In order to do that, we need to maintain a 
journal index, so that messages' position can be tracked inside the 
journal.\nIn Artemis, things work differently in this regard. The whole message 
journal is kept in memory and messages are dispatched directly from it. When we 
run out of memory, messages are paged on the producer side (before they hit the 
broker). Theay are stored in sequential page files in the same order as they 
arrived. Once the memory is freed, messages are moved from these page files 
into the journal. With paging working like this, messages are read fro
 m the file journal only when the broker starts up, in order to recreate this 
in-memory version of the journal. In this case, the journal is only read 
sequentially, meaning that there's no need to keep an index of messages in the 
journal.\nThis is one of the main differences between ActiveMQ 5.x and Artemis. 
It's important to understand it early on as it affects a lot of destination 
policy settings and how we configure brokers in order to support these 
scenarios properly. \nAddressing differences\nAnother big difference that's 
good to cover early on is the difference is how message addressing and routing 
is done. ActiveMQ started as a open source JMS implementation, so at its core 
all JMS concepts like queues, topics and durable subscriptions are implemented 
as the first-class citizens. It's all based on OpenWire protocol developed 
within the project and even KahaDB message store is OpenWire centric. This 
means that all other supported protocols, like MQTT and AMQP are translated int
 ernally into OpenWire.\nArtemis took a different approach. It implements only 
queues internally and all other messaging concepts are achieved by routing 
messages to appropriate queue(s) using addresses. Messaging concepts like 
publish-subscribe (topics) and point-to-point (queues) are implemented using 
different type of routing mechanisms on addresses. Multicast routing is used to 
implement publish-subscribe semantics, where all subscribers to a certain 
address will get their own internal queue and messages will be routed to all of 
them. Anycast routing is used implement point-to-point semantics, where 
there'll be only one queue for the address and all consumers will subscribe to 
it. The addressing and routing scheme is used across all protocols. So for 
example, you can view the JMS topic just as a multicast address. We'll cover 
this topic in more details in the later 
articles.\n"},"notice.html":{"url":"notice.html","title":"Legal 
Notice","keywords":"","body":"Legal Notice\nLicensed
  to the Apache Software Foundation (ASF) under one or more\ncontributor 
license agreements. See the NOTICE file distributed with\nthis work for 
additional information regarding copyright ownership. The\nASF licenses this 
file to You under the Apache License, Version 2.0 (the\n\"License\"); you may 
not use this file except in compliance with the\nLicense. You may obtain a copy 
of the License at\nhttp://www.apache.org/licenses/LICENSE-2.0\nUnless required 
by applicable law or agreed to in writing, software\ndistributed under the 
License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS 
OF ANY KIND, either express or implied.\nSee the License for the specific 
language governing permissions and\nlimitations under the License.\n"}}}
\ No newline at end of file

[... 3 lines stripped ...]

Reply via email to