tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Leo Donahue <donahu...@gmail.com>
Subject Re: Separation of CATALINA_HOME and CATALINA_BASE
Date Mon, 03 Nov 2014 22:05:42 GMT
On Mon, Nov 3, 2014 at 3:33 PM, Christopher Schultz <
chris@christopherschultz.net> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> Vince,
>
> On 11/3/14 4:12 PM, vince.webb@thomsonreuters.com wrote:
> >
> > How much easier it would be if the Tomcat distribution had the
> > correct separation build in.
>
> It would be harder for newbies and no real benefit to experts.
>
> Let me show you the difference in complexity between deploying Tomcat
> with a unified versus split configuration:
>
> Unified
> - -------
>
> $ wget http://host/path/to/tomcat-x.y.z.tar.gz
> $ tar xzf http://host/path/to/tomcat-x.y.z.tar.gz
> $ tomcat-x.y.z/bin/startup.sh
>

You can do that in linux. not so well in windows.  scripts work
differently.  you log out of the windows session, and the script stops,
hence why every windows user wants to install Tomcat as a service,
whichever way they do that.



> Separated
> - ---------
> $ wget http://host/path/to/tomcat-x.y.z.tar.gz
> $ tar xzf http://host/path/to/tomcat-x.y.z.tar.gz
> $ mkdir -p my-tomcat-base/conf
> $ mkdir -p my-tomcat-base/log
> $ mkdir -p my-tomcat-base/work
> $ mkdir -p my-tomcat-base/temp
> $ mkdir -p my-tomcat-base/webapps
> $ cp tomcat-x.y.z/conf/server.xml my-tomcat-base/conf
> $ cp tomcat-x.y.z/conf/web.xml my-tomcat-base/conf
>   (the above step may not actually be necessary)
> $ cp tomcat-x.y.z/webapps/ROOT my-tomcat-base/webapps
> $ export CATALINA_HOME=`pwd`/tomcat-x.y.z
> $ export CATALINA_BASE=`pwd`/my-tomcat-base
> $ $CATALINA_HOME/bin/startup.sh
>
> Done.
>
> So, that's not all that complicated when you think about it, but to
> ask someone who knows nothing about a command-line, working
> effectively in an operating system, etc. and only knows about
> programming in Java -- maybe only servlet programming in Java -- to
> configure the server in the split case is confusing as all hell.
>
> Anyone downloading a ZIP or tar archive containing a Tomcat
> installation would be confused if the archive contained not one but
> two top-level directories. Also, it would overwrite your
> split-configuration if you unpacked that archive in the same directory
> as when you first started.
>
> An installer program would have to explain what in the world the split
> configuration was. Have you ever tried to tell someone how to set up
> their email? POP versus IMAP? Most users have absolutely no idea what
> that is, and mail programs give no clue as to which one to choose. The
> same would be true of CATALINA_HOME versus CATALINA_BASE.


Everything has some degree of learning.  New people are trying to learn two
things at once, how something works as well as the "why do it this way"
conventions that experienced users have implemented.  New users don't
understand the convention and want to learn it the hard way first before
they can appreciate or even understand the convention.


> (Besides, I
> truly doubt that any expert system administrators are using the Tomcat
> Windows Installer to install/upgrade their systems. Maybe I'm wrong,
>

You had qualify that with 'expert'... now I have nothing more to add.


> but then again I can't imagine running a Windows server in production.
>

This too shall pass...


> I value my sleep and prefer to build new things instead of holding
> together configurations with chewing gum and duct tape. Oh, and
> rebooting all the time.)
>
> Anyhow, we can debate this all you want, but I will be -0 or even -1
> to a default split-configuration of Tomcat unless someone has a really
> good idea for how to make it make sense to anyone on their first-touch.
>
> - -chris
>

I would rather just point (windows) people to an example of a split
configuration or any other configuration and let them implement it if they
choose to do so, instead of getting Tomcat pre-configured. Part of the draw
to Tomcat is that you have flexibility with how you choose to run it
(script, service, windows installer, etc)

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message