CATALINA_HOME ile CATALINA_BASE karşılaştırması


11

Ubuntu'nun CATALINA_BASEortam değişkenini neden farklı kılacağına kesin bir cevap bulamıyorum CATALINA_HOME. Bu belgeyi , ayarın CATALINA_BASEeşdeğer yapamayacağını gösteren bu belgeyi buldum CATALINA_HOME. Bu belge aynı zamanda CATALINA_BASEbirden çok örneği kullanılabilir hale getirmek için ayarın yapılmasını önermektedir .

Ancak, bunu açıklayan bir şey bulamıyorum. Muhtemelen, bir single ile çalışmak CATALINA_HOMEuzun zamandır iyi oldu, ancak Ubuntu geçti.

Bulduğum bu soruyu bir ile aydınlatıcı cevap Ask Ubuntu üzerinde ancak çok spesifik yoktur CATALINA_HOMEvs. CATALINA_BASE. Bu soru , yapılandırma dosyasındaki Host kapsayıcısının Tomcat6 belgelerinde belgelenen "appBase" parametresi ile ilgilidir.

İşte sorular: Bu iki değişken neden ayrılıyor? Ne zaman ayrılmalıdır? Bu yöneticinin ne yapmasına izin verir? Daha sonra her bir dizine ne koyarsınız? Bu iki değişken ne zaman aynı olmalı? ASF standart uygulama için ne önerir?


Yanıtlar:


12

Bu iki değişken neden ayrılıyor?

catalina.home ortak bilgilerin yerini gösterir.
catalina.base, örneğe özgü tüm bilgilerin tutulduğu dizine işaret eder .

Yani 1 eviniz var ve 1'den fazla üssünüz olabilir.

Ne zaman ayrılmalıdır? Bu iki değişken ne zaman aynı olmalı?

1 tomcat'iniz varsa onları aynı değere ayarlayabilirsiniz, ancak iyi uygulama, önceden planlamanızı ve ayrı tutmanızı önerir: birden fazla tomcat'a ihtiyacınız olup olmadığını asla bilemezsiniz. Ubuntu, daha mantıklı olması nedeniyle bu düşünme biçimini izlemeye başladı: 2+ tomcats çalıştırmayı kolaylaştırır, ancak her ikisini de aynı değere ayarlamak, herkesin temel değeri düzenlemesini gerektireceği 1 tomcat çalıştırmayı devre dışı bırakmaz. Onları farklı tutmak daha mantıklı.

Bu yöneticinin ne yapmasına izin verir?

Her tomcat örneğinin kendi uygulamalarına sahip olabileceği aynı anda 1'den fazla tomcat'in çalışmasına izin verin.

Daha sonra her bir dizine ne koyarsınız?

Ev binairy içerir.
Temel konf, günlükler, webapps, iş ve temp içerir. Her tomcat örneği için 1.


4

CATALINA_HOME vs CATALINA_BASE

Birden fazla örnek çalıştırıyorsanız, yalnızca iki değişkene de ihtiyacınız vardır CATALINA_HOME.

Başka bir deyişle: CATALINA_HOMEgereklidir ve CATALINA_BASEisteğe bağlıdır.

CATALINA_HOME Tomcat kurulumunuzun kökünü temsil eder.

İsteğe bağlı olarak, Tomcat $CATALINA_BASEher örnek için tanımlanarak birden fazla örnek için yapılandırılabilir . Birden çok örnek yapılandırılmamışsa, $CATALINA_BASEile aynıdır $CATALINA_HOME.

Bakınız: Apache Tomcat 7 - Giriş

Ayrı olarak çalıştırılır CATALINA_HOMEve CATALINA_BASERUNNING.txt dosyasında belgelendirilir:

CATALINA_HOMEVe CATALINA_BASEortam değişkenleri sırasıyla Apache Tomcat'in konumu ve aktif konfigürasyon konumunu belirtmek için kullanılır.

Komut dosyasını CATALINA_HOMEve CATALINA_BASEdeğişkenleri yapılandıramazsınız setenv, çünkü bu dosyayı bulmak için kullanılırlar.

Örneğin:

(4.1) Tomcat, aşağıdaki komutlardan biri çalıştırılarak başlatılabilir:

  %CATALINA_HOME%\bin\startup.bat         (Windows)

  $CATALINA_HOME/bin/startup.sh           (Unix)

veya

  %CATALINA_HOME%\bin\catalina.bat start  (Windows)

  $CATALINA_HOME/bin/catalina.sh start    (Unix)

Birden Fazla Tomcat Örneği

Birçok durumda, aynı sunucudaki birden fazla kullanıcı arasında paylaşılan bir Tomcat ikili dağıtımının tek bir kopyasının olması arzu edilir. Bunu mümkün kılmak için, CATALINA_BASE ortam değişkenini 'kişisel' Tomcat örneğinizin dosyalarını içeren dizine ayarlayabilirsiniz .

Ayrı bir CATALINA_HOMEve ile çalışırken CATALINA_BASE, dosyalar ve dizinler aşağıdaki gibi bölünür:

İçinde CATALINA_BASE:

  • bin - Yalnızca: setenv.sh (* nix) veya setenv.bat (Windows), tomcat-juli.jar
  • conf - Sunucu yapılandırma dosyaları (server.xml dahil)
  • lib - Aşağıda açıklandığı gibi kütüphaneler ve sınıflar
  • logs - Günlük ve çıktı dosyaları
  • webapps - Otomatik olarak yüklenen web uygulamaları
  • work - Web uygulamaları için geçici çalışma dizinleri
  • temp - JVM tarafından geçici dosyalar için kullanılan dizin>

İçinde CATALINA_HOME:

  • bin - Başlatma ve kapatma komut dosyaları
  • lib - Aşağıda açıklandığı gibi kütüphaneler ve sınıflar
  • endorsed- Standart "Onaylanmış Standartlar" ı geçersiz kılan kitaplıklar. Varsayılan olarak yoktur.

Nasıl kontrol edilir

Kendinizin CATALINA_BASEve nelerin CATALINA_HOMEçalıştığını kontrol etmenin en kolay yolu startup.sh, örneğin:

$ /usr/share/tomcat7/bin/startup.sh
Using CATALINA_BASE:   /usr/share/tomcat7
Using CATALINA_HOME:   /usr/share/tomcat7

Tomcat dosyalarının nereye kurulduğunu dpkgaşağıdaki araçla da kontrol edebilirsiniz (Debian / Ubuntu):

dpkg -L tomcat7-common

3

İki tomcat örneğini çalıştırmanın en iyi yolu olmasının yanı sıra, güncellemeyi kolaylaştırır.

Bu kurulumu kullanıyorum.

<!-- language: bash -->

/opt/apache-tomcat-7.0-32
/opt/apache-tomcat-7.0.39
/opt/apache-tomcat-7       (simbolic link to apache-tomcat-7.0.32)

CATALINA_HOME = / opt / apache'nin-tomcat-7

/srv/user_deploys/tomcat_product_a
/srv/user_deploys/tomcat_product_b

CATALINA_BASE bir veya başka bir dağıtım dizinini gösterir.

Temel ikili ve kütüphaneler Hangi /opt/Hemen kopya server.xml, web.xml(, dokümanlar lütfen okuyun ve bazı diğer dosyalar) ve dizinleri bin, günlükleri webapps, temp çalışmasına ve (RTLM lovelly olarak L ediniz)

CATALINA_HOMEHer örnek için $ CATALINA_BASE / bin / setenv.sh dosyasında değişiklik yaparak tomcat ikili dosyalarını güncelleyebilir veya ikili dosyaları "global olarak" güncelleyerek sembolik bağlantıyı değiştirebilirsiniz.

Tek bir örneğiniz olsa bile güncellemek daha kolaydır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.