<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title>Recent Posts in 'Assuring Availability of Administration Aspect' | Pragmatic Forums</title>
    <link>http://forums.pragprog.com/forums/46/topics/150</link>
    <language>en-us</language>
    <ttl>60</ttl>
    <description></description>
    <item>
      <title>Assuring Availability of Administration Aspect posted by Michael Nygard @ Tue, 27 Nov 2007 06:25:00 -0000</title>
      <description>&lt;p&gt;Sean,&lt;/p&gt;


	&lt;p&gt;One of the problems with writing a book that works for many different products and vendors is that you have to treat some topics generally.  Thread pool configuration is an area that varies wildly from one application server to another.&lt;/p&gt;


	&lt;p&gt;For instance, with &lt;span class="caps"&gt;ATG&lt;/span&gt;, the administration aspect is automatically served by a reserved pool of threads.  Not so for Tomcat.  In Tomcat, request handling threads are associated with individual Connectors. So, if all you want to do is reserve capacity for admin work, then a new connector is all you require.&lt;/p&gt;


	&lt;p&gt;It&amp;#8217;s a bit more work to make sure that the admin context is completely separated from the application contexts. (As a security enhancement, that is.)  To do that, you need to bind the admin Connector to the IP address of your administrative &lt;span class="caps"&gt;NIC&lt;/span&gt;, while also binding the application Connector to the IP address of your production &lt;span class="caps"&gt;NIC&lt;/span&gt; (or teamed &lt;span class="caps"&gt;NIC&lt;/span&gt; pair).&lt;/p&gt;


	&lt;p&gt;This &lt;em&gt;still&lt;/em&gt; has the drawback that /admin resolves correctly via either IP address &amp;#38; port.  That is to say, both Connectors can reach exactly the same set of contexts because they reside in the same Service.  To really achieve complete separation, you will need to create a second Service with its own Engine, Host, and application base.&lt;/p&gt;


	&lt;p&gt;Of course, it&amp;#8217;s a pretty good idea to separate the admin function from the application function anyway, so this isn&amp;#8217;t a bad approach&amp;#8230; but it&amp;#8217;s not an easy one, either.&lt;/p&gt;


	&lt;p&gt;Needless to say, WebSphere, JBoss, and WebLogic each have their own completely different ways to configure bulkheads.&lt;/p&gt;


	&lt;p&gt;Cheers,&lt;br /&gt;Michael T. Nygard&lt;br /&gt;&lt;a href="mailto:michael@michaelnygard.com"&gt;michael@michaelnygard.com&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.michaelnygard.com/"&gt;http://www.michaelnygard.com/&lt;/a&gt;&lt;/p&gt;


	&lt;p&gt;Author of &amp;#8220;Release It!&amp;#8221; &lt;br /&gt;&lt;a href="http://pragmaticprogrammer.com/titles/mnee/index.html"&gt;http://pragmaticprogrammer.com/titles/mnee/index.html&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 27 Nov 2007 06:25:00 -0000</pubDate>
      <guid isPermaLink="false">forums.pragprog.com:46:150:1967</guid>
      <author>Michael Nygard</author>
      <link>http://forums.pragprog.com/forums/46/topics/150</link>
    </item>
    <item>
      <title>Assuring Availability of Administration Aspect posted by Sean Dockery @ Fri, 23 Nov 2007 08:01:19 -0000</title>
      <description>&lt;p&gt;Hello Michael.&lt;/p&gt;


	&lt;p&gt;In your book, you discuss how applications should allocate various request handling thread pools to separate the customer request handling from other request handling, with the intent that the application can still be controlled or queried for its status despite being pummeled by customers.  You didn&amp;#8217;t suggest how this goal is achieved in real life, however.&lt;/p&gt;


	&lt;p&gt;For example, if I want to deploy my application to Tomcat (which I believe is configured to allow 100 concurrent requests out of the box), how do I go about ensuring that certain request threads run against one aspect (customers) versus another (administration)?  Can this be done while allowing both the customer and administration aspects of an application to exist in the same web component, or do I need to deploy separate web components under two (or more) Services declared in the server.xml?  Do you recommend multiple Services, or multiple instances of Tomcat (i.e.: &lt;span class="caps"&gt;JVM&lt;/span&gt;&amp;#8217;s) to mitigate the risk?&lt;/p&gt;


	&lt;p&gt;Thanks.&lt;/p&gt;</description>
      <pubDate>Fri, 23 Nov 2007 08:01:19 -0000</pubDate>
      <guid isPermaLink="false">forums.pragprog.com:46:150:1963</guid>
      <author>Sean Dockery</author>
      <link>http://forums.pragprog.com/forums/46/topics/150</link>
    </item>
  </channel>
</rss>
